Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - aiuto!! ho un problema con un programma
Forum - C/C++ - aiuto!! ho un problema con un programma

Avatar
simone97 (Normal User)
Newbie


Messaggi: 14
Iscritto: 28/03/2010

Segnala al moderatore
Postato alle 21:08
Domenica, 02/05/2010
il sorgente è questo
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
main(){
int sceltagrande, scelta, scelta2, scelta10, qlat, calc, scelta3, y=0;
float lato, base, altezza, perimetro, area, bmagg, bmin, apotema, cateto1, cateto2, ipotenusa, aiu, num1, num2;
char *x;
while (y == 0) {
y = 1;
system("color 50");
printf("Benvenuto in MATHS2000\n1)Calcolo poligoni Regolari\n2)Aree e Perimetro\n3)Trovare terne pitagorighe\n4)Calcolatrice\n");
scanf("%d",&sceltagrande);
getchar();
system("cls");
if (sceltagrande==1) {
system("color 30");
printf("********************************\n");
printf("CALCOLATORE DI POLIGONI REGOLARI\n");
printf("********************************\n");
printf("1)Triangolo equilatero\n2)Quadrato\n3)Pentagono\n4)Esagono\n5)Ettagono\n6)Ottagono\n7)Ennagono\n8)Decagono\n");
scanf("%d",&scelta);
getchar();
if (scelta==1) {
system("cls");
printf("Hai scelto TRIANGOLO EQUILATERO, deci se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema)* 3 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci l'apotema: cm \n");
scanf("%f",&apotema);
getchar();
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
area = (lato * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area *2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 0.289;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 0.289;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 0.433;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==2) {
system("cls");
printf("Hai scelto QUADRATO, decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 4 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 0.5;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 0.5;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 1;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==3) {
system("cls");
printf("Hai scelto PENTAGONO, decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 5 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 0.688;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 0.688;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 1.720;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==4) {
system("cls");
printf("Hai scelto ESAGONO,  decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 6 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 0.866;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 0.866;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 2.598;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==5) {
system("cls");
printf("Hai scelto ETTAGONO,  decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 7 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 1.038;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 1.038;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 3.634;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==6) {
system("cls");
printf("Hai scelto OTTAGONO,  decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 8 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 1.207;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 1.207;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 4.828;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==7) {
system("cls");
printf("Hai scelto ENNAGONO,  decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 9 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 1.374;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 1.374;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 6.182;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
else if (scelta==8) {
system("cls");
printf("Hai scelto DECAGONO,  decidi se:\n1)Trovare l'area avendo il perimetro e l'apotema\n2)Trovare l'area avendo il lato e l'apotema\n3)Trovare il perimetro avendo l'area e l'apotema\n4)Trovare l'apotema avendo l'area e il perimetro\n5)Trovare l'apotema avendo il lato\n6)Trovare il lato avendo l'apotema\n7)Trovare l'area avendo il lato\n");
scanf("%d",&scelta2);
getchar();
if (scelta2==1) {
system("cls");
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (perimetro * apotema) / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==2) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
area = (lato * apotema) * 10 / 2;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
else if (scelta2==3) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("&f",&area);
getchar();
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
perimetro = (area * 2) / apotema;
printf("Il perimetro misura cm %.3f",perimetro);
getchar();
}
else if (scelta2==4) {
system("cls");
printf("Inserisci l'area:cm(quadrati) \n");
scanf("%f",&area);
getchar();
printf("Inserisci il perimetro:cm \n");
scanf("%f",&perimetro);
getchar();
apotema = (area * 2) / perimetro;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==5) {
system("cls");
printf("Inserisci il lato:cm \n");
scanf("%f",&lato);
getchar();
apotema = lato * 1.539;
printf("L'apotema misura cm %.3f",apotema);
getchar();
}
else if (scelta2==6) {
system("cls");
printf("Inserisci l'apotema:cm \n");
scanf("%f",&apotema);
getchar();
lato = apotema / 1.539;
printf("Il lato misura cm %.3f",lato);
getchar();
}
else if (scelta2==7) {
system("cls");
printf("Inserisci il lato:cm ");
scanf("%f",&lato);
getchar();
area = (lato * lato) * 7.694;
printf("L'area misura cm(quadrati) %.3f",area);
getchar();
}
}
}
else if (sceltagrande==2) {
system("color 30");
printf("Decidi cosa fare:\n1)Perimetro (tutte le figure)\n2)Area Quadrato\n3)Area Rettangolo\n4)Area Parallelogrammo\n5)Area Trapezio\n6)Area Triangolo\n");
scanf("%d",&scelta10);
getchar();
if (scelta10==1) {
system("cls");
printf("Hai scelto di calcolare il perimetro, inserisci il valore di un lato: cm");
scanf("%f",&lato);
getchar();
printf("Inserisci di quanti lati e' composta la figura: ");
scanf("%d",&qlat);
getchar();
perimetro = lato * qlat;
printf("Il perimetro misura %.2fcm",perimetro);
getchar();
system("cls");
system("color 20");
printf("Il programma e' terminato");
getchar();
}
else if (scelta10==2) {
system("cls");
printf("Hai scelto di calcolare l'area del quadrato\ninserisci il valore del lato: cm");
scanf("%f",&lato);
getchar();
perimetro = lato * lato;
printf("Il perimetro misura %.2fcm",perimetro);
getchar();
system("cls");
system("color 20");
printf("Il programma e' terminato");
getchar();
}
else if (scelta10==3) {
system("cls");
printf("Hai scelto di calcolare l'area del rettangolo\ninserisci il valore della base: cm");
scanf("%f",&base);
getchar();
printf("Inserisci ora il valore dell'altezza: cm");
scanf("%f",&altezza);
getchar();
area = lato * altezza;
printf("L'area misura %.2fcm",area);
getchar();
system("cls");
system("color 20");
printf("Il programma e' terminato");
getchar();
}
else if (scelta10==4) {
system("cls");
printf("Hai scelto di calcolare l'area del parallelogrammo\ninserisci il valore della base: cm");
scanf("%f",&base);
getchar();
printf("Inserisci ora il valore dell'altezza: cm");
scanf("%f",&altezza);
getchar();
area = base * altezza;
printf("L'area misura %.2fcm",area);
getchar();
system("cls");
system("color 20");
printf("Il programma e' terminato");
getchar();
}
else if (scelta10==5) {
system("cls");
printf("Hai scelto di calcolare l'area del trapezio\ninserisci il valore della base maggiore: cm");
scanf("%f",&bmagg);
getchar();
printf("Inserisci il valore della base minore: cm");
scanf("%f",&bmin);
getchar();
printf("Inserisci il valore dell'altezza: cm");
scanf("%f",&altezza);
area = ((bmagg + bmin) / 2) * altezza;
printf("L'area misura %.2fcm",area);
getchar();
getchar();
system("cls");
system("color 20");
printf("Il programma e' terminato");
getchar();
}
else if (scelta10==6) {
system("cls");
printf("Hai scelto di calcolare l'area del triangolo\ninserisci il valore della base: cm");
scanf("%f",&base);
getchar();
printf("Inserisci ora il valore dell'altezza: cm");
scanf("%f",&altezza);
getchar();
area = (base * altezza) / 2;
printf("L'area misura %.2fcm",area);
getchar();
system("cls");
system("color 20");
printf("Il programma e' terminato");
getchar();
}
else {
printf("Devi scegliere un numero dall'elenco!\nRiavvia il programma.");
getchar();
}
}
else if (sceltagrande==3){
system("cls");
printf("Hai scelto di trovare le terne pitagorighe, premi INVIO\n");
getchar();
printf("Inserisci 1 per trovare l' ipotenusa, 2 per il cateto,\n");
scanf("%d",&scelta3);
if (scelta3==1) {
printf("Inserisci il primo cateto: \n");
scanf("%f",&cateto1);
getchar();
printf("Inserisci il secondo cateto: \n");
scanf("%f",&cateto2);
getchar();
cateto1 = cateto1 * cateto1;
cateto2 = cateto2 * cateto2;
ipotenusa = cateto1 + cateto2;
aiu = sqrt(ipotenusa);
printf("L'ipotenusa e' %.3f",aiu);
}
else if (scelta3 == 2) {
printf("Inserisci l'ipotenusa: \n");
scanf("%f",&ipotenusa);
getchar();
printf("Inserisci il cateto: \n");
scanf("%f",&cateto1);
getchar();
cateto1 = cateto1 * cateto1;
ipotenusa = ipotenusa * ipotenusa;
cateto2 = ipotenusa - cateto1;
aiu = sqrt (cateto2);
printf("Il cateto e' %.3f",aiu);
}
}
else if (sceltagrande==4) {
system("cls");
printf("Hai scelto di usare la calcolatrice\nInserisci il primo numero: ");
scanf("%f", &num1);
getchar();
printf("Inserisci il secondo numero: ");
scanf("%f",&num2);
getchar();
printf("Quale operazione vuoi eseguire?\n1)Addizione\n2)Sottrazione\n3)Moltiplicazione\n4)Divisione\n5)Radice quadrata\n");
scanf("%d",&calc);
getchar();
if (calc==1){
system("cls");
base = num1 + num2;
printf("Hai scelto Addizione\nIl risultato e' %.3f",base);
}
else if (calc==2){
system("cls");
base = num1 - num2;
printf("Hai scelto Sottrazione\nIl risultato e' %.3f",base);
}
else if (calc==3){
system("cls");
base = num1 * num2;
printf("Hai scelto Moltipicazione\nIl risultato e' %.3f",base);
}
else if (calc==4) {
system("cls");
base = num1 / num2;
printf("Hai scelto Divisione\nIl risultato e' %.3f",base);
}
else if(calc==5){
system("cls");
num1 = sqrt(num1);
num2 = sqrt(num2);
printf("Hai scelto Radice quadrata\nLa Radice quadrata del primo numero e' %f\nLa radice quadrata del secondo numero %f\n",num1,num2);
}
}
printf("\nIl programma e' terminato!\nVuoi ricominciare? SI o NO\n");
scanf("%s",&x);
getchar();
if ((strcmp(x,"SI"))||(strcmp(x,"si"))){
system("cls");
y = 0;
}
else if ((strcmp(x,"NO"))||(strcmp(x,"no"))){
y = 1;
void exit (int status);
}
}
getchar();
return 0;
}

PM Quote
Avatar
simone97 (Normal User)
Newbie


Messaggi: 14
Iscritto: 28/03/2010

Segnala al moderatore
Postato alle 21:10
Domenica, 02/05/2010
il problema viene quando chiedo all'utente se vuole ricominciare il programma, quando metto si o no non succede niente...

PM Quote
Avatar
XBarboX (Member)
Guru


Messaggi: 945
Iscritto: 31/12/2008

Segnala al moderatore
Postato alle 21:13
Domenica, 02/05/2010
Allora hai fatto parecchi errori:
1)Non hai messo il sorgente nel tag code;
2)Hai fatto un programma ORRIBILE! Tutto nel main. Un sorgente così lungo non può essere tenuto solo nel main
3)Hai dimenticato di scrivere int prima di "main".
4)Hai fatto parecchi "errori" di conversione da double a float, ma il c++ ti passa questo errore.

Eccoti l'errore:
Codice sorgente - presumibilmente C/C++

  1. ...
  2. int main(){
  3. ...


PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6379
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:21
Domenica, 02/05/2010
L'errore principale è aver dichiarato un puntatore a char in

char *x;

al posto di una stringa di 3 caratteri da utilizzare nella scanf finale.

Inoltre, la strcmp non è usata correttamente.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilità) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
simone97 (Normal User)
Newbie


Messaggi: 14
Iscritto: 28/03/2010

Segnala al moderatore
Postato alle 15:48
Lunedì, 03/05/2010
grazie "nessuno" :)

PM Quote