ohjelmointi harjoitus

idiootti123

opettelen ohjelmointi kieltä ja pitäisi luoda c kielellä oleva ohjelma. En paljoakaan tajua näistä joten voisitteko kertoa mikä tässä on vikana?

tehtävä: Ohjelma, joka kysyy sukupuolen ja tämän jälkeen iän. Lopuksi ohjelma tulostaa näytölle lausahduksen seuraavan mukaisesti: Mies 0-55 v. "Olet mies parhaassa iässä", Mies 55-100 v. "Olet viisas mies" jne. Ikä käsitellään kokonaisluku muuttujana ja sukupuoli merkki muuttujana. (if lauseita käyttäen)

ohjelma:

#include
#include

int main ()

{

char sukupuoli;

printf ("Oletko mies vai nainen? (m/n):");
sukupuoli = getchar ();

if ((sukupuoli == 'm') || (sukupuoli == 'M'))
printf ("Olet mies");

else if ((sukupuoli == 'n') || (sukupuoli == 'N'))
printf ("Olet nainen");


int ika;

printf ("Anna ikäsi:");
ika = getchar ()

if ((sukupuoli == 'm') || (ika == 55''))
printf ("Olet viisas mies!");

if ((sukupuoli == 'n') || (ika == 55''))
printf ("Näytät nuorelta ikäiseksesi!");

else
printf ("Ohjelmassa on tapahtunut virje!");

system ("pause");

return 0;

}

7

1151

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • joo

      päi helevettiä tuo o tehty

      • sitten

        vähäsen neovoa.


    • asdasdasd

      Tässä tämmöinen tekele ilman if lauseita (piru kun en lukenut tehtävänantoa huolella;)

      Enivei, syötteetkin vois lukea paremmin mut eihän kaikkea jaksa..


      int main(int argc, char* argv[])
      {
      char *foo[] = { "Olet neito kauneimmillaan!", "Näytät nuorelta ikäiseksesi!",
      "Olet mies parhaassa iässä!", "Olet viisas mies!"};

      int ika;
      char sukupuoli;

      printf("Ootko [m]ies vai [n]ainen?");
      scanf("%c", &sukupuoli);

      printf("Annapa ikäsi");
      scanf("%d", &ika);

      printf("%s\n", foo[2 * (sukupuoli=='m' || sukupuoli=='M') (ika >= 55)]);

      return 0;
      }

    • arto77

      1. käytä if lauseiden ymäpärillä AINA kaarisulkuja

      ei näin

      if ((sukupuoli == 'm') || (sukupuoli == 'M'))
      printf ("Olet mies");

      vaan näin

      if ((sukupuoli == 'm') || (sukupuoli == 'M'))
      {
      printf ("Olet mies");
      }

      vältyt monelta ongelmalta.

      2. Ikää ei lueta getchar() metodilla. haluat lukea luvun et yhtä merkkiä. scanf("%d",&ika);


      3. Sekoilua if lauseiden kanssa:


      if ((sukupuoli == 'm') || (ika == = ja

      • puusilimä

        " (itseasiassa ei tule mielleen yhtään kurssia jossa olisi opeteltu debuggausta)."

        vaikken nyt hirveesti niitä kursseja jaksanutkaan ;D
        mielestäni ihan alkajille olisi hyvä opettaa ensimmäisenä debuggausta!!
        siinä oppisivat huomaamaan paljon helpommin omia virheitään kuin pelkkää koodia tuijottamalla ja "byhyy eitäävaantoimi" kommentilla.


    • jepa

      Älä herran jumala käytä noita printf, scanf ym. paskoja!!

      Ne on jotain kälystä C ohjelmointi ajan juttuja ennen olio ohjelmointia.

      Ja jos opettajasi niitä tyrkyttää niin sano, että voisi opettaa oikein ja nykyaikaista ohjelmointia = ohjelmointia olioilla.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Virkamiehille tarvitaan tuntuvat palkankorotukset

      Naistenpäivänä on syytä muistuttaa, että virkamiehen euro on vain 80 senttiä. Palkat tulee saattaa samalle tasolle yksi
      Maailman menoa
      72
      4989
    2. Riikka Purran kaudella nousi bensan hinta yli 2 euron

      Muistatteko kuinka edellisen vasemmistohallituksen aikana, ns. Marinin aikakaudella, bensiiniä sai 1,3 euron litrahinnal
      Maailman menoa
      116
      4699
    3. Jäikö meidän välit

      Mielestäsi Kesken?
      Ikävä
      80
      4183
    4. Olisipa saanut sinuun

      Tutustua paremmin. Harmi että aloin lopulta jännittämään kun näytit tunteesi niin voimakkaasti ja lähestyit niin voimaak
      Ikävä
      101
      4097
    5. Veli Sofia teki urosmehiläisen työn

      Paljastaessaan kuinka TPS:ssä ei joukkuehenki toimi sooloilijoiden vuoksi, jonka takia koko seura ei pärjää kilpailussa
      Maailman menoa
      3
      3288
    6. Mitäs nyt sijoittajat?

      Pörssit laskevat maailmalla Iranin sodan takia ja muutenkin ovat olleet Trumpin vallan alla epävarmat. Ainoa, mikä on no
      Maailman menoa
      122
      3104
    7. Miks tän meidän

      Rakkauden on pitänyt olla näin vaikeaa?
      Ikävä
      35
      2838
    8. muista olla

      VAROVAINEN! m
      Ikävä
      28
      2777
    9. Onneksi on edes yksi kuva

      Susta mitä voin välillä ihastella ja kaipailla sua😔
      Ikävä
      40
      2753
    10. Elän vastoin

      Kaikkia arvoja kun en pysy sinusta erossa.
      Ikävä
      37
      2752
    Aihe