Tee ohjelma, joka kysyy ensin käyttäjän sukupuolen ja tämän jälkeen iän. Lopuksi ohjelma tulostaa jonkin lausahduksen seuraavan ohjeen mukaisesti: Mies 0-55 vuotta: "Olet mies parhaassa iässä!", Mies 56-100 vuotta: "Olet viisas mies!", Nainen 0-55 vuotta: "Olet neito kauneimmillaan!", Nainen 56-100 vuotta: "Näytät nuorelta ikäiseksesi!", Muuten "Ohjelmassa tapahtunut virhe!" Ikä käsitellään kokonaisluku muuttujana ja sukupuoli merkkimuuttujana (m/n).
Ohjelmasta olen saanut aikaiseksi alla olevan. En saa toimimaan, joten Missä Vika?
#include
int main()
{
int ika;
char kayttajan_sukupuoli;
char kayttajan_ika;
printf("Oletko mies vai nainen (m / n)? ");
kayttajan_sukupuoli = getchar();
printf("Anna ikäsi: ");
scanf("%d", &ika);
if(kayttajan_sukupuoli == 'm')
if(kayttajan_ika < 55)
printf("Olet mies parhaassa iässä!\n");
if(kayttajan_sukupuoli == 'm')
if(kayttajan_ika > 55)
printf("Olet viisas mies!\n");
else {
printf("\n");
}
{
if(kayttajan_sukupuoli == 'n')
if(kayttajan_ika < 55)
printf("Olet neito kauneimmillaan!\n");
if(kayttajan_sukupuoli == 'n')
if(kayttajan_ika > 55)
printf("Näytät nuorelta ikäiseksesi!\n");
else
printf("\n");
if(kayttajan_ika >100)
printf("Ohjelmassa tapahtunut virhe!\n");
return 0;
}
Ohjelmasta olen saanut aikaiseksi alla olevan. En saa toimimaan, joten Missä Vika?
#include
int main()
{
int ika;
char kayttajan_sukupuoli;
char kayttajan_ika;
printf("Oletko mies vai nainen (m / n)? ");
kayttajan_sukupuoli = getchar();
printf("Anna ikäsi: ");
scanf("%d", &ika);
if(kayttajan_sukupuoli == 'm')
if(kayttajan_ika < 55)
printf("Olet mies parhaassa iässä!\n");
if(kayttajan_sukupuoli == 'm')
if(kayttajan_ika > 55)
printf("Olet viisas mies!\n");
else {
printf("\n");
}
{
if(kayttajan_sukupuoli == 'n')
if(kayttajan_ika < 55)
printf("Olet neito kauneimmillaan!\n");
if(kayttajan_sukupuoli == 'n')
if(kayttajan_ika > 55)
printf("Näytät nuorelta ikäiseksesi!\n");
else
printf("\n");
if(kayttajan_ika >100)
printf("Ohjelmassa tapahtunut virhe!\n");
return 0;
}
Vastaukset 5
Vanhimmat
{
Nyt ohjelma näyttää tältä, eikä toimi toivotulla tavalla:
#include
int main()
{
int ika;
char kayttajan_sukupuoli;
char kayttajan_ika;
printf("Oletko mies vai nainen (m / n)? ");
kayttajan_sukupuoli = getchar();
printf("Anna ikäsi: ");
scanf("%d", &ika);
if(kayttajan_sukupuoli == 'm')
{
if(kayttajan_ika < 55)
{
printf("Olet mies parhaassa iässä!\n");
}
}
if(kayttajan_sukupuoli == 'm')
{
if(kayttajan_ika > 55)
{
printf("Olet viisas mies!\n");
}
}
if(kayttajan_sukupuoli == 'n')
{
if(kayttajan_ika < 55)
{
printf("Olet neito kauneimmillaan!\n");
}
}
if(kayttajan_sukupuoli == 'n')
{
if(kayttajan_ika > 55)
{
printf("Näytät nuorelta ikäiseksesi!\n");
}
}
if(kayttajan_ika > 100)
{
printf("Ohjelmassa tapahtunut virhe!\n");
}
return 0;
}
"scanf("%d", &ika);
if(kayttajan_sukupuoli == 'm')
{
if(kayttajan_ika < 55)
{
printf("Olet mies parhaassa iässä!\n");
}
} "
/*jos scannaat &ika muuttujaan ni kannattaa myös siihen verrata*/
//jotenni näin
scanf("%d", &ika);
if(kayttajan_sukupuoli == 'm')
{
if(ika < 55)//
Siinä!!!
#include
#include
#include
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
int ika;
char kayttajan_sukupuoli;
printf("Oletko mies vai nainen (m / n)? ");
kayttajan_sukupuoli = getchar();
printf("Anna ikasi: ");
scanf("%d", &ika);
if(kayttajan_sukupuoli == 'm' && ika
Toimi!