Kezdőoldal » Számítástechnika » Programozás » Hogyan kell ezt a programot...

Hogyan kell ezt a programot elkésziteni codeblocks-ban?

Figyelt kérdés

Olvassunk be a standard bemenetről egy ötjegyű egész számot (lehet pozitív és negatív is). Ha a szám nem felel meg a feltételeknek, akkor hibajelzéssel lépjünk ki!(Azt nem kell megvizsgálni, hogy egész-e, elegendő azt vizsgálni, hogy ötjegyű-e.)Ha megfelel a feltételeknek, akkor döntsük el a számról, hogy szimmetrikus-e! (Pl. az 12321 az szimmetrikus, a -78787 is az, de az 14323 az nem.)A döntés eredményét a kimeneten jelenítsük meg!(Megjegyzés: a programunk ne használjon ismétléses vezérlést, még akkor se, ha ismerjük a vezérlési szerkezet megvalósítását tavalyról –majd később általánosítjuk a problémát.Elegendő, ha kizárólag ötjegyű számokra működik.)



Példák:

Írj be egyötjegyűegész számot: -13831Szimmetrikus :)

Írj be egyötjegyűegész számot: 11321Nem szimmetrikus :(

Írj be egyötjegyűegész számot: 3443Hiba: a szám nem ötjegyű.



2019. szept. 28. 09:38
1 2
 1/17 anonim ***** válasza:
Csak be kell gépelni a kódot, aztán a "Compile" opciót választani.
2019. szept. 28. 10:43
Hasznos számodra ez a válasz?
 2/17 anonim ***** válasza:

Mivel ki van kötve, hogy ne használjunk ciklusokat, nagyjából ennyi a feladat:


1. számjegy egyezzen meg az 5. számjeggyel (num % 10 == num / 10000)

2. számjegy egyezzen meg a 4. számjeggyel ((num/10)%10 == (num/1000)%10


Ha ez teljesül, akkor szimetrikus, különben nem az.


Át is lehet alakítani string-é, és akkor a string pozícióit kell vizsgálni.

2019. szept. 28. 10:49
Hasznos számodra ez a válasz?
 3/17 A kérdező kommentje:

#include <iostream>


using namespace std;


int main()

{

int otjegyu, num;

cout<<"adj meg egy 5jegyu szamot: !"<<endl;

cin>>otjegyu;


if((((num % 10 == num / 10000) || (num/10)%10 == (num/1000)%10))))

{

cout<<"a szam szimmetrikus!"<<endl;

}

else {

cout<<"a szam nem szimmetrikus!"<<endl;

}

return 0;

}


valami nem jó, de szerintem nem is jól csinálom...

2019. szept. 28. 13:29
 4/17 anonim ***** válasza:

Ránézésre 2 hiba van.

Egyrészt, nem vizsgálod, hogy 5 jegyű-e.

Másrészt, a jelenlegi if-ben te vagyot(||) használsz, miközben a két feltételnek egyszerre kell teljesülni vagyis és(&&) kell.

2019. szept. 28. 16:42
Hasznos számodra ez a válasz?
 5/17 A kérdező kommentje:

hogy tudom megvizsgálni azt, hogy a szám 5jegyű?

és (&&)-re már kijavitottam, köszi

2019. szept. 28. 18:21
 6/17 A kérdező kommentje:

if(szam>9999&&szam<100000)


igy?

2019. szept. 28. 18:31
 7/17 anonim ***** válasza:
Osztással. Ha 10000-rel osztod, akkor 0-nál nagyobb számot kell kapj (vagyis legalább 5 jegyű) és 10-nél kisebbet (vagyis kisebb, mitn egy 6 jegyű).
2019. szept. 28. 18:33
Hasznos számodra ez a válasz?
 8/17 A kérdező kommentje:

#include <iostream>


using namespace std;


int main()

{

int szam, num;

cout<<"adj meg egy 5jegyu szamot: !"<<endl;

cin>>otjegyu;

if(szam>9999&&szam<100000) {

cout<<"ez a szam otjegyu!"<<endl;

cin>>szam;

{

else

cout<<"ez a szam nem otjegyu"<<endl;

cin>>szam

}

}


if((((num % 10 == num / 10000) && (num/10)%10 == (num/1000)%10))))

{

cout<<"a szam szimmetrikus!"<<endl;

}

else {

cout<<"a szam nem szimmetrikus!"<<endl;

}

return 0;

}

2019. szept. 28. 18:37
 9/17 A kérdező kommentje:
AZ ELSO cin-t elirtam
2019. szept. 28. 18:37
 10/17 A kérdező kommentje:

[link]


van néhány hiba :/

2019. szept. 28. 18:44
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!