

cyklus for
Ked zadam to cislo vzdy mi vyde viac delitelov o 2 napr. 10 ma 7 namiesto 5 neviete kde je chyba?? dakujem.
#include <stdio.h>
int main()
{
int delitelia;
int cislo;
int i;
printf("Tento program je na urcenie poctu delitelov v lubovolnom celom cisle.\n");
printf("Zadaj cislo: ");
scanf("%d",&cislo);
for(i=2;i<=cislo;i++)
{
if(i%2==0)
{
delitelia++;
}
}
printf("Pocet parnych cisel v %d je %d",cislo ,delitelia);
getchar();
getchar();
return 0;
}
upraveno formátování do lidské podoby (touchwood)
maminka mě učila inicializovat proměnné..
(edit: tím netvrdím, že to je důvod, ale že to patří k dobrým móresům, i když třeba C inicializuje statické proměnné na nulu automaticky)
sak maju vsetky na zaciatku hodnotu nula nie?
no tak ja nejsom moc slusny chlapec takze to nevadi :D
to neděláš dobře, Jaromíre, s těma sirkama..
:D ok ok tak budem len my mame tosku naruseneho ucitela mam 30% zo 100% kvoli tomu ze pouzivam kniznice a prikazy co sme sa neucili a ze nemam vynechany riadok a zly nazov premennych (trojuholnik a,b,c) a int a; je pre neho zly nazov :DDDDDDD za to by mi zas strhol body je to chumajko
Pes je zakopán zde:
kurnik co tam moze byt zle?? :D Mne uz to nemysli po osmej :D
tak třeba zjišťuješ dělitele, tj. postupně zkoušíš dělit zadané číslo nějakou sekvencí čísel. Kde máš ve vzorci to zadané číslo d? Dále testuješ modulo dvou na iteraci, tj. dělitele ti to přičte za každé sudé iterované číslo i...
ja som tam vlastne zle napisal ten uvod to ma zistit kolko parnych cisiel sa nachadza v tom cisle napr 25
V tom případě stačí to číslo celočíseleně vydělit 2 a necpat tam nějaký cyklus.
No možná by ses měl rozmyslet, co ten program má vlastně dělat.
Ja viem ale proste ucitel po nas chce aby sme to stravili s cyklusom no a proste mi to vychadza zle 2delitelia su vzdy naviac a neviem preco
A vynulovat na začátku počet dělitelů jsi teda zkoušel nebo ne?
No nechapem tomu ale fakt to funguje :D ale preco?? sak predsa kazda premenna v C ma mat na zaciatku honotu 0 nie??
A to si myslíš, nebo ti to někdo řekl?
Pocul som to tusim aj to potvrdil pan admin :) niekde na zaciatku komentar
Tak to jsi ho jenom špatně pochopil.
to může, ale nemusí být pravda, záleží na konkrétním kompileru C, jeho stáří, atd.
Obecně platí, že je lepší inicializovat, než to nedělat (dovolit si neinicializovat můžou jen lidi, co vědí co činí).
Já Cčko umím maximálně číst, nejsem programátor, takže mé doporučení je sichrovat se vždy.
http://publications.gbdirect.co.uk/c_book/chapter6 /initialization.html
cislo=0
delitelia=0
zadaj nenulove cislo
ak cislo==0 exit
for i=1;i<=cislo;i++
{
ak nie je zbytok po deleni cislo/i tak delitelia++
}
pocet delitelov delitelia
exit
Uz mi to ide dakujem moc vsetkym :)