Datorprofessorer
Masters programprovning

Du kommer att bli ombedd att slutföra ett riktigt test som en del av din ansökan.

Syftet med detta korta test är att bedöma din förmåga att lösa elementära programmeringsproblem på ett språk som du väljer.

Skriv dina lösningar i Java om du är bekant med det språket. Använd annars ett av dessa språk: C, C ++ eller C #. För varje av problemen nedan, skriv den enklaste, tydligaste lösningen du kan, i form av ett kort program.

PROV TEST

  1. En matris med ett udda antal element sägs vara centrerat om alla element (utom den mellersta) är strängt större än värdet av mittelementet. Observera att endast arrayer med ett udda antal element har ett mellannement. Skriv en funktion som accepterar ett heltal och returnerar 1 om det är en centrerad array, annars returnerar den 0.

Exempel:

om ingångsarrayen är avkastning
{1, 2, 3, 4, 5} 0 (mittelementet 3 är inte strängt mindre än alla andra element)
{3, 2, 1, 4, 5} 1 (mittelementet 1 är strängt mindre än alla andra element)
{3, 2, 1, 4, 1} 0 (mittelementet 1 är inte strängt mindre än alla andra element)
{1, 2, 3, 4} 0 (inget mellannement)
{} 0 (inget mellannement)
10 {} 1 (mittelementet 10 är strängt mindre än alla andra element)

Se rätt svar på provfrågor.

  1. Skriv en funktion som tar en rad heltal som ett argument och returnerar ett värde baserat på summan av det jämnaste och udda talet i matrisen. Låt X = summan av udda tal i arrayen och låt Y = summan av jämntal. Funktionen ska returnera X-Y

Funktionen underskrift är:
int f (int [] a)

Exempel

om input array är avkastning
1 {} 1
{1, 2} -1
{1, 2, 3} 2
{1, 2, 3, 4} -2
{3, 3, 4, 4} -2
{3, 2, 3, 4} 0
{4, 1, 2, 3} -2
{1, 1} 2
{} 0

Se rätt svar på provfrågor.

  1. Skriv en funktion som accepterar en teckenuppsättning, en nollbaserad startposition och en längd. Det ska returnera en teckenuppsättning som innehåller längdtecken som börjar med startainmatningsgruppens karaktär. Funktionen bör göra felkontroll i startpositionen och längden och returnera null om värdet inte är lagligt.
    Funktions signaturen är:
    char [] f (char [] a, int start, int len)

Exempel

om ingångsparametrar är avkastning
{'a', 'b', 'c'}, 0, 4 null
{'a', 'b', 'c'}, 0, 3 {'a', 'b', 'c'}
{'a', 'b', 'c'}, 0, 2 {'a', 'b'}
{'a', 'b', 'c'}, 0, 1 {'en'}
{'a', 'b', 'c'}, 1, 3 null
{'a', 'b', 'c'}, 1, 2 {'före Kristus'}
{'a', 'b', 'c'}, 1, 1 { 'B'}
{'a', 'b', 'c'}, 2, 2 null
{'a', 'b', 'c'}, 2, 1 { 'C'}
{'a', 'b', 'c'}, 3, 1 null
{'a', 'b', 'c'}, 1, 0 {}
{'a', 'b', 'c'}, -1, 2 null
{'a', 'b', 'c'}, -1, -2 null
{}, 0, 1 null

Se rätt svar på provfrågor.

  1. Skriv en funktion för att vända ett heltal med numeriska operatörer och utan att använda några arrayer eller andra datastrukturer.
    Funktionen underskrift är:
    int f (int n)

Exempel

om ingångsnumret är avkastning
1234 4321
12005 50021
1 1
1000 1
0 0
-12345 -54321

Se rätt svar på provfrågor.

  1. Skriv en funktion för att returnera en array som innehåller alla element som är gemensamma för två givna arrays som innehåller tydliga positiva heltal. Du bör inte använda några inbyggda metoder. Du får använda något antal arrays.
    Funktionen underskrift är:
    int [] f (int [] först, int [] andra)

Exempel

om ingångsparametrar är avkastning
{1, 8, 3, 2}, {4, 2, 6, 1} {1, 2}
{1, 8, 3, 2, 6}, {2, 6, 1} {2, 6, 1}
{1, 3, 7, 9}, {7, 1, 9, 3} {1, 3, 7, 9}
{1, 2}, {3, 4} {}
{}, {1, 2, 3} {}
{1, 2}, {} {}
{1, 2}, null null
null, {} null
null, null null

Se rätt svar på provfrågor.

  1. Tänk på en array A med n av positiva heltal. En heltal idx kallas en punktpunkt för A, om A [0] + A [1] + ... + A [idx - 1] är lika med A [idx + 1] + A [idx + 2] + ... + A [n - 1]. Skriv en funktion för att returnera POE för en array, om den existerar och -1 annars.
    Funktionen underskrift är:
    int f (int [] a)

Exempel

om ingångssystem är avkastning
{1, 8, 3, 7, 10, 2} 3 Reason: a [0] + a [1] + a [2] är lika med en [4] + a [5]
{1, 5, 3, 1, 1, 1, 1, 1, 1} 2 Reason: a [0] + a [1] är lika med en [3] + a [4] + a [5] + en [6] + en [7] + en [8]
{2, 1, 1, 1, 2, 1, 7} 5 Reason: a [0] + a [1] + a [2] + a [3] + a [4] är lika med en [6]
{1, 2, 3} -1 Anledning: Ingen POE.
{3, 4, 5, 10} -1 Anledning: Ingen POE.
{1, 2, 10, 3, 4} -1 Anledning: Ingen POE.

Se rätt svar på provfrågor.

Notera: Vänligen läs lista över vanliga programmeringsfel som eleverna har begått på vårt test.


Applikationslänkar:

Inträdesdatum:


INTERNATIONELL:

  • februari
  • Maj
  • augusti
  • november

US BORGAR & PERMANENTA RESIDENTER:

  • februari
  • augusti