Professionisti del computer
Test di esempio del programma del Master
Ti verrà chiesto di completare un vero test come parte del processo di candidatura.
Lo scopo di questo breve test è valutare la tua capacità di risolvere problemi di programmazione elementare in una lingua a tua scelta.
Scrivi le tue soluzioni in Java se conosci questa lingua; altrimenti usa una di queste lingue: C, C ++ o C #. Per ciascuno dei problemi di seguito, scrivi la soluzione più semplice e chiara che puoi, sotto forma di un breve programma.
TEST DI ESEMPIO
- Un array con un numero dispari di elementi è detto centrato se tutti gli elementi (tranne quello centrale) sono strettamente maggiori del valore dell'elemento centrale. Nota che solo gli array con un numero dispari di elementi hanno un elemento centrale. Scrivi una funzione che accetta un array intero e restituisce 1 se è un array centrato, altrimenti restituisce 0.
Consigli d'uso:
se l'array di input è | ritorno |
{1, 2, 3, 4, 5} | 0 (l'elemento centrale 3 non è strettamente inferiore a tutti gli altri elementi) |
{3, 2, 1, 4, 5} | 1 (l'elemento centrale 1 è strettamente inferiore a tutti gli altri elementi) |
{3, 2, 1, 4, 1} | 0 (l'elemento centrale 1 non è strettamente inferiore a tutti gli altri elementi) |
{1, 2, 3, 4} | 0 (nessun elemento intermedio) |
{} | 0 (nessun elemento intermedio) |
{} 10 | 1 (l'elemento centrale 10 è strettamente inferiore a tutti gli altri elementi) |
Vedi le risposte corrette per domande campione.
- Scrivi una funzione che accetta un array di numeri interi come argomento e restituisce un valore basato sulle somme dei numeri pari e dispari nell'array. Sia X = la somma dei numeri dispari nell'array e sia Y = la somma dei numeri pari. La funzione dovrebbe restituire X - Y
La firma della funzione è:
int f (int [] a)
Esempi
se l'array di input è | ritorno |
{} 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 |
Vedi le risposte corrette per domande campione.
- Scrivi una funzione che accetta un array di caratteri, una posizione di inizio a base zero e una lunghezza. Dovrebbe restituire un array di caratteri contenente contenuto lunghezzacaratteri che iniziano con inizia acarattere della matrice di input. La funzione dovrebbe eseguire il controllo degli errori nella posizione iniziale e la lunghezza e restituire null se il valore non è legale.
La firma della funzione è:
char [] f (char [] a, int start, int len)
Esempi
se i parametri di input sono | ritorno |
{'a', 'b', 'c'}, 0, 4 | nullo |
{'a', 'b', 'c'}, 0, 3 | {'a', 'b', 'c'} |
{'a', 'b', 'c'}, 0, 2 | {'a', 'b'} |
{'a', 'b', 'c'}, 0, 1 | {'un'} |
{'a', 'b', 'c'}, 1, 3 | nullo |
{'a', 'b', 'c'}, 1, 2 | {'avanti Cristo'} |
{'a', 'b', 'c'}, 1, 1 | {'b'} |
{'a', 'b', 'c'}, 2, 2 | nullo |
{'a', 'b', 'c'}, 2, 1 | {'c'} |
{'a', 'b', 'c'}, 3, 1 | nullo |
{'a', 'b', 'c'}, 1, 0 | {} |
{'a', 'b', 'c'}, -1, 2 | nullo |
{'a', 'b', 'c'}, -1, -2 | nullo |
{}, 0, 1 | nullo |
Vedi le risposte corrette per domande campione.
- Scrivi una funzione per invertire un numero intero utilizzando operatori numerici e senza utilizzare alcun array o altre strutture di dati.
La firma della funzione è:
int f (int n)
Esempi
se il numero intero di input è | ritorno |
1234 | 4321 |
12005 | 50021 |
1 | 1 |
1000 | 1 |
0 | 0 |
all'12345 ottobre | all'54321 ottobre |
Vedi le risposte corrette per domande campione.
- Scrivi una funzione per restituire un array contenente tutti gli elementi comuni a due array dati contenenti interi positivi distinti. Non dovresti usare metodi inediti. È consentito utilizzare qualsiasi numero di array.
La firma della funzione è:
int [] f (int [] first, int [] second)
Esempi
se i parametri di input sono | ritorno |
{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 | nullo |
nullo, {} | nullo |
null, null | nullo |
Vedi le risposte corrette per domande campione.
- Considera un array A con n di numeri interi positivi. Un idx intero è chiamato POE (punto di equilibrio) di A, se A [0] + A [1] + ... + A [idx - 1] è uguale a A [idx + 1] + A [idx + 2] + ... + A [n - 1]. Scrivi una funzione per restituire POE di un array, se esiste e -1 altrimenti.
La firma della funzione è:
int f (int [] a)
Esempi
se gli array di input sono | ritorno |
{1, 8, 3, 7, 10, 2} | 3 Motivo: a [0] + a [1] + a [2] è uguale a [4] + a [5] |
{1, 5, 3, 1, 1, 1, 1, 1, 1} | 2 Motivo: a [0] + a [1] è uguale a [3] + a [4] + a [5] + a [6] + a [7] + a [8] |
{2, 1, 1, 1, 2, 1, 7} | 5 Motivo: a [0] + a [1] + a [2] + a [3] + a [4] è uguale a [6] |
{1, 2, 3} | -1 Motivo: nessun POE. |
{3, 4, 5, 10} | -1 Motivo: nessun POE. |
{1, 2, 10, 3, 4} | -1 Motivo: nessun POE. |
Vedi le risposte corrette per domande campione.
Nota: Si prega di leggere il elenco di errori di programmazione comuni che gli studenti hanno commesso sul nostro test.