PDA

View Full Version : Correzione esercizio


Marko91
16-03-2008, 17:33
Ciao, mi servirebbe un aiutino con il codice qui sotto. :D
Non so per quale motivo ho dei problemi con scanf, non mi acquisisce correttamente le coppie di caratteri... sono su Vista. Poi non sono sicuro che sia totalmente corretto dal punto di vista logico, e che giri bene anche senza quel problema.
Le richieste dell'esercizio sono:
Acquisiti n coppie di caratteri calcolare la percentuale di coppie con valori uguali a un rif numerico, calcolare il valore minimo e quante volte compare.



#include <stdio.h>
#include <conio.h>

int main()
{

int contmin,n,cont,contp;
char a,b,min,rif;
contp=0;
cont=0;

do
{
printf("fornisci rif\n");
scanf("%c",&rif);
}
while(!(rif>'0' && rif<'9'));

do
{
printf("fornisci numero coppie di carattere\n");
scanf("%d",&n);
}
while(n<=0);



for(cont=0;cont<n;cont=cont+1)
{
printf("fornisci coppie\n");
scanf("%c%c",&a,&b);

if(cont==0)
{
if(a<b)
{
min=a;
contmin=1;
}
else
min=b;
}
else
{
if(a<min)
{
min=a;
contmin=1;
}
else
{
if(a==min)
contmin=contmin+1;
}

if(b<min)
{
min=b;
contmin=1;
}
else
{
if(b==min)
contmin=contmin+1;
}
}

if(a==rif && b==rif)
contp++;
}

if(cont==0)
printf("non c'è min\n");
else
{
printf("Il minimo è %c \n", min);
printf("Il minimo compare %d volte\n", contmin);
printf("La percentuale dei valori uguali a rif è %d ", (contp*50)/cont);
}
getch();




}

carter100
16-03-2008, 17:48
scanf("%c\n%c\n",&a,&b);


Non è che abbia capito che devi fare con l'es, comunque se un problema è che se metti 3 coppie, non ti chiede di inserire 2 valori per volta, ma uno solo, metti i due \n dopo %c nello scanf come quotato