| | |
| Stránka: 1 z 1
| [ Príspevkov: 5 ] | |
Autor | Správa |
---|
| Napísal Eddy: 18.10.2011 15:29 | |
|
Napíšte funkciu, ktorá vypíše všetky kladné násobky zadaného čísla x až po zadané n (vrátane, x, n sú parametre funkcie).
Skusal som to spravit nejak takto.. ale je to samozrejme zle:
Kód: void nasobokcisla(int n, int x) { int n, i,x, ; printf("Zadaj cislo n:\n "); scanf("%i",&n); printf("Zadaj cislo x:\n "); scanf("%i",&x); for (i=0;i<=x;i=i+n); printf("%i",i);
}
|
|
Registrovaný: 11.01.09 Prihlásený: 23.04.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 18.10.2011 16:28 | |
|
Napriklad takto:
Kód: void function( int x, int n ) {
int i;
for ( i = x; i <= n; i++ ) if ( ( i % x == 0 ) ) printf( "%d ", i );
}
Musis len poriadne analyzovat problem. Potrebujes vypisovat nasobky zadaneho cisla x az po cislo n. Cize pojdeme cyklom od x po n. Kazdu iteraciu budeme kontrolovat, ci je zvysok po deleni x-kom nula. Ak ano, je nim delitelne a teda mame pozadovany nasobok cisla x a mozme ho vypisat.
|
|
Registrovaný: 23.12.10 Prihlásený: 10.09.22 Príspevky: 1056 Témy: 157 Bydlisko: KK/PP/BA | Napísal F3RY: 01.06.2012 21:30 | |
|
Vysvetlil by mi niekto preco mi nefunguje for cyklus?
Kód: #include <stdio.h> int i,a; main() { printf ("zadaj cislo \n"); scanf ("%d",&a); for (i=1;i<a;i++); { printf ("%d \n",i); } }
Cyklus sa vykona len raz, nemam ani sajnu preco.
_________________ HP ProBook 4530s Intel® Core™ i5-2430M (2.4GHz, 3MB, 2 jadrá)*4GB 1333MHz DDR3*ATI Mobility Radeon HD 6490 1GB + Intel HD Graphics 3000*640GB SATA 5400RPM *Windows 7 Home Premium 64 bitová verzia Lenovo IdeaPad Z50-70 Intel Core i5 4210 Haswell* NVIDIA GeForce GT 840M 4GB + Intel HD Graphics 4000*SSHD 1TB 5400 otáčok + 8GB cache*RAM 4GB* Full HD (1920 × 1080)*Windows 10 pro
Boh je reálny, pokial nebol deklarovaný ako integer |
|
Registrovaný: 11.01.09 Prihlásený: 23.04.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 01.06.2012 21:44 | |
|
Vsimol som si, ze do teraz si pracoval s pascalom a preto ti aj ostali zle navyky - za for nesmies dat strednik ( znak ; ), pretoze to je tiez prikaz ( prazdny prikaz ), cize cyklus for vykona "prazdny prikaz" tolkokrat, kolko je zadane. Potom dalsia vec je, ze v C-cku mozes kludne vkladat kod do blokov, aj viac krat, vnorene, nejako takto:
Kód: { { ; } printf( "abcd...." ); }
a teda tento blok, ktory mas za for sa netyka samotneho cyklu ( pretoze ten ma len jeden prikaz a to strednik ), ale je to samostatny blok, preto sa vykona prave raz.
Dalsia rozdielna vec od pascalu je aj ine fungovanie prikazu for - mozno ze to vies, ale radsej ti to spomeniem. Funguje tak, ze prva cast sa vykona ( nemusi to byt nutne inicializacia, ale zvycajne sa tak pouziva ), to znamena, v tvojom pripade priradis premennej i jednotku. V druhom kroku sa vykona porovnanie a to uz hned na zaciatku, este pred vykonanim prikazov v cykle. Ak je vysledok nenulova hodnota, cyklus sa vykona. V tomto pripade sa hodnota v premennej i porovna s hodnotou v premennej a. Ak je a rovne 1, tak i nie je mensie ako a, teda cyklus sa nevykona ani raz, hoc to mozno takto planujes ( zadaj cislo , kolko krat sa ma vykonat cyklus ). No a posledna cast je prikaz, ktory sa ma vykonat po vykonani cyklu - spravidla inkrementacia, dekrementacia premennej cyklu, ale aj tu moze byt akykolvek platny prikaz, ako v ktorejkolvek casti prikazu for.
|
|
Registrovaný: 23.12.10 Prihlásený: 10.09.22 Príspevky: 1056 Témy: 157 Bydlisko: KK/PP/BA | Napísal F3RY: 01.06.2012 22:08 | |
|
Dakujem, velmi si mi pomohol. Stravil som nad tym vela casu, ale to s tym strednikom ma nenapadlo
_________________ HP ProBook 4530s Intel® Core™ i5-2430M (2.4GHz, 3MB, 2 jadrá)*4GB 1333MHz DDR3*ATI Mobility Radeon HD 6490 1GB + Intel HD Graphics 3000*640GB SATA 5400RPM *Windows 7 Home Premium 64 bitová verzia Lenovo IdeaPad Z50-70 Intel Core i5 4210 Haswell* NVIDIA GeForce GT 840M 4GB + Intel HD Graphics 4000*SSHD 1TB 5400 otáčok + 8GB cache*RAM 4GB* Full HD (1920 × 1080)*Windows 10 pro
Boh je reálny, pokial nebol deklarovaný ako integer |
|
| Stránka: 1 z 1
| [ Príspevkov: 5 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| LG M228WA-BZ 22'', Wide help help v Monitory, televízory a projektory | 1 | 1163 | 05.12.2007 12:41 OmeGa | | help AMD Sempron 2800+ frekvencia 1700 help v AMD - Advanced Micro Devices | 16 | 1737 | 10.03.2007 9:13 dr.etker | | Programovanie v Ostatné | 3 | 637 | 16.07.2010 10:22 Echo | | Programovanie :?? v PHP, ASP | 5 | 642 | 13.06.2007 14:21 Tominator | | Programovanie? v Ostatné | 3 | 581 | 10.03.2011 20:06 Echo | | programovanie v Smartfóny a tablety | 4 | 668 | 20.07.2011 19:26 Qpkqkma | | programovanie v Assembler, C, C++, Pascal, Java | 19 | 1121 | 12.09.2012 8:39 Fico | | programovanie v Ponuka práce | 1 | 1309 | 25.10.2006 16:35 JanoF | | programovanie v Ostatné | 11 | 840 | 08.01.2011 18:44 TommyHot | | PROGRAMOVANIE v Ostatné | 6 | 1003 | 12.10.2007 21:45 Tominator | | Programovanie v Ostatné | 14 | 580 | 15.11.2021 16:11 eon5 | | Sieťové programovanie v Assembler, C, C++, Pascal, Java | 8 | 1243 | 27.04.2009 2:09 euthanan | | Excel programovanie v Ostatné | 2 | 709 | 16.06.2017 15:04 eon5 | | Programovanie aruina v Ponuka práce | 0 | 5186 | 18.01.2019 11:26 ironwood | | Programovanie - Zaciatky v Assembler, C, C++, Pascal, Java | 14 | 1040 | 21.02.2015 6:26 faraon | | programovanie mikroprocesorov v Elektronika | 1 | 1100 | 29.04.2009 16:19 Qpkqkma |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|