Aiuto con programma semplice in C++

di il
8 risposte

Aiuto con programma semplice in C++

Il compilatore non rileva alcun errore, quando però il programma viene fatto eseguire risulta impossibile inserire le variabili nello scanf.

#include <stdio.h>
int main()
{
float altezze[12];
int i;
int altezzagrande;
float percentuale;
altezzagrande=0;
i=0;
while(i<12);
{
scanf("%f",& altezze);
if(altezze>1.7)
{
altezzagrande++;
}
i++;
}
percentuale=12/altezzagrande*100;
printf("Il numero di altezze che superano 1.7 metri e' di %f che rappresenta il %f del totale", altezzagrande, percentuale);
return 0;
}

8 Risposte

  • Re: Aiuto con programma semplice in C++

    Scusa, se il codice non lo formatti un pochino, facile non troverai aiuto.
    
    #include <stdio.h>
    int main()
    {
    	float altezze[12];
    	int i;
    	int altezzagrande;
    	float percentuale;
    
    	altezzagrande=0;
    	i=0;
    	while(i<12);
    	{
    		scanf("%f",& altezze);
    		if(altezze>1.7)
    		{
    			altezzagrande++;
    		}
    		i++;
    	}
    	percentuale=12/altezzagrande*100;
    	printf("Il numero di altezze che superano 1.7 metri e' di %f che rappresenta il %f del totale", altezzagrande, percentuale);
    	
    	return 0;
    }
    
    ci sono 2 righe errate, dopo il while, ragiona sull'array "altezze", ma meglio se fai almeno uno sforzo e trovi tu il problema.
  • Re: Aiuto con programma semplice in C++

    spectrum ha scritto:


    
    		scanf("%f",& altezze);
    
    In realtà [ i ] l'aveva messa, è che senza il tag l'ha interpretato come corsivo.
  • Re: Aiuto con programma semplice in C++

    Ah .. ok

    mm, pero ho pensato che si bloccava su scanf visto l'errore.
    risulta impossibile inserire le variabili nello scanf.
    dunque, codice corretto dovrebbe essere
    while(i<12);
    	{
    		scanf("%f",&altezze[i]);
    		if(altezze[i]>1.7)
  • Re: Aiuto con programma semplice in C++

    Scusate
    Ma il problema non è il punto e virgola dopo il while?

    Che poi ci sarebbe comunque un problema di approssimazione a causa della divisione intera
  • Re: Aiuto con programma semplice in C++

    StandardOil ha scritto:


    Scusate
    Ma il problema non è il punto e virgola dopo il while?

    Che poi ci sarebbe comunque un problema di approssimazione a causa della divisione intera
    Sì, il problema che segnalava 10bit è quello

    La formula finale è proprio sbagliata e prevede addirittura una divisione per zero, ma probabilmente non se ne è accorto essendo bloccato sopra
  • Re: Aiuto con programma semplice in C++

    Arghm, devo mettere gli ochciali bravo che l'hai trovato da solo ! Col punto e virgola messo li, ovviamente non vai a fare nulla di quello che viene dopo.

    Per il calcolo preciso tutto in float, usa tutti numeri float. tipo 12f / variable_float
  • Re: Aiuto con programma semplice in C++

    spectrum ha scritto:


    Arghm, devo mettere gli ochciali bravo che l'hai trovato da solo !
    In effetti potrebbero servire, visto che il destinatario del tuo post e il creatore del topic non sono lo stesso utente!
  • Re: Aiuto con programma semplice in C++

    In effetti potrebbero servire, visto che il destinatario del tuo post e il creatore del topic non sono lo stesso utente!
    Giusto, 2 occhiali !
Devi accedere o registrarti per scrivere nel forum
8 risposte