Kezdőoldal » Számítástechnika » Programozás » Hogy állapítsam meg hogy a...

Hogy állapítsam meg hogy a szám páros, vagy páratlan? (c-ben)

Figyelt kérdés

Egy programot készítem.A lényege, ha páros az user által beírt szám kivon egyet.Ha páratlan hozzáad 1-et.

A problémám hogy nem tudom hogyan kell megkülönböztetni a páratlan és páros számokat.

Ezt műveltem eddig :


#include <stdio.h>

#include <stdlib.h>

int main() {

int a ;

printf("adj meg 1 szamot");

scanf("%d", &a);

if (a% 2);

{

printf("Az eredmeny %d \n.",a-1);

}

if(a% 1);

{

printf("Az eredmeny %d.",a+1);

}

system("pause");

return 0;



}


} de annyit csinál a program hogy a beírt számhoz hozzáad, egyet leírja az eredményt majd kivon egyet és azt is leírja. tudnátok segíteni ?

[link]


2014. máj. 31. 00:05
1 2
 1/16 iostream ***** válasza:
100%
a + a%2*2 - 1
2014. máj. 31. 00:11
Hasznos számodra ez a válasz?
 2/16 anonim ***** válasza:
100%
A páratlant nem úgy állapítod meg, hogy a%1. Minden szám osztható 1-gyel... Programozni másodikos matek nélkül?... o_O szimplán legyen ott egy else. Ami nem páros, az nyilván páratlan.
2014. máj. 31. 00:19
Hasznos számodra ez a válasz?
 3/16 anonim ***** válasza:
100%

1. if után nem kell pontosvessző. A jelenlegi formájában a feltétel ha teljesül, végrehajt egy üres utasítást, aztán végrehajtja a kapcsos zárójelek közötti részt. Azaz

if (blabla == cucc) // ide nem kell a pontosvessző!

{

// Ami feltétel esetén végrehajtódjon

}


2. C-szerű nyelvekben a maradékos osztás operátora a %. Ugye ha egy szám páros, kettővel osztva 0 maradékot képez, ellenkező esetben 1-et. Innentől szerintem mennie kell.

2014. máj. 31. 00:21
Hasznos számodra ez a válasz?
 4/16 A kérdező kommentje:
Nem vagyok hülye matekból , csak azokat a képleteket (a% 2) is a netről kapirgáltam össze mert ilyet még nem vettünk órán,ezért tulajdonképpen nem is értettem mit is jelentenek.De köszönöm a válaszokat.javítom :)
2014. máj. 31. 00:30
 5/16 A kérdező kommentje:

Kész is.Már működik rendesen.Így néz ki

#include <stdio.h>

#include <stdlib.h>

int main() {

int a ;

printf("adj meg 1 szamot");

scanf("%d", &a);

if (a % 2 == 0)

{

printf("Az eredmeny %d \n.",a-1);

}

else

{

printf("Az eredmeny %d.",a+1);

}

system("pause");

return 0;



}

:) mennek a pacsik

2014. máj. 31. 00:39
 6/16 anonim ***** válasza:
Én azt nem értem, miért nem az első választ használod.
2014. máj. 31. 11:38
Hasznos számodra ez a válasz?
 7/16 A kérdező kommentje:
Mert ugyan az a kettő, és ezt nekem egyszerűbb megjegyezni.
2014. máj. 31. 11:49
 8/16 A kérdező kommentje:
Most hogy megpróbáltam azzal nem is működik.Bármit beírok minden esetben kivon belőle.Csak a % 2 == 0 ezzel működik.
2014. máj. 31. 11:52
 9/16 anonim ***** válasza:
Természetesen működik. Valamit elírtál.
2014. máj. 31. 12:22
Hasznos számodra ez a válasz?
 10/16 iostream ***** válasza:
Működik, csak nem fejtettem ki, hogy hogy. Az a kifejezés előállítja az eredményt, if nélkül. Kihasználja, hogy az a%2 értéke 0 vagy 1, attól függően hogy páros vagy páratlan, és ezzel végez aritmetikai műveleteket (eltolja eggyel fel vagy le a számot). Tehát szimplán if nélkül kiiratod az eredményt.
2014. máj. 31. 12:31
Hasznos számodra ez a válasz?
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!