Consiglio esercizi d'esame

di il
2 risposte

Consiglio esercizi d'esame

Salve a tutti, volevo chiedere un consiglio. Se all'esame di informatica dovesse capitarmi un esercizio del genere:

Si implementi una funzione filtraMultipli che riceve in ingresso un array v1 e restituisce un array v2 della
stessa dimensione di v1. In particolare, l’i-esimo elemento di v2 è calcolato come segue:
• se v1 è multiplo di almeno un elemento di v1 avente indice maggiore di i, allora v2 è uguale a v1;
• altrimenti, v2 = 0

considerando che nella traccia si chiede di scrivere solo la funzione e che questa prenda in ingresso l'array v1 sarebbe meglio dichiarare la dimensione dell'array nella funzione stessa o passarla come parametro in questo modo?



int* filtraMultipli (int* v1, int n) // n è la dimensione dell'array v1
{
	int* v2 = new int[n];
	
	for (int i=0; i<n; i++)
	
		v2[i] = 0;
	
	for (int i = 0; i < n-1; i++)
		for (int j = i+1; j < n; j++)
			{
				if(v1[i] % v1[j] == 0)
				v2[i] = v1[i];
			}
	
	return v2;
		
}

2 Risposte

  • Re: Consiglio esercizi d'esame

    Lo devi chiedere al professore.

    In generale o passi il parametro oppure - se non lo puoi passare - esiste un metodo alternativo per calcolarsi la lunghezza all'interno della funzione stessa (ad esempio, se sono stringhe sicuramente finiscono col byte zero). Passare la lunghezza come variabile globale o come #define è considerata cattiva programmazione, salvo casi particolari
  • Re: Consiglio esercizi d'esame

    Weierstrass ha scritto:


    Lo devi chiedere al professore.

    In generale o passi il parametro oppure - se non lo puoi passare - esiste un metodo alternativo per calcolarsi la lunghezza all'interno della funzione stessa (ad esempio, se sono stringhe sicuramente finiscono col byte zero). Passare la lunghezza come variabile globale o come #define è considerata cattiva programmazione, salvo casi particolari
    grazie
Devi accedere o registrarti per scrivere nel forum
2 risposte