Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Autor | Správa |
---|
Registrovaný: 03.03.06 Prihlásený: 03.06.20 Príspevky: 799 Témy: 159 | 159 |
Zdravim, mohli by ste mi prosim poradit, ako postupovat v tomto pripade?
Kód: Napíšte funkciu, ktorá vypíše všetky násobky zadaného čísla x v intervale [a,b] (uzavretý interval, x,a,b sú parametre funkcie).
S C len zacinam, tak ma prosim neukamenujte.
A nasiel by sa niekto, kto by mi vedel "po lopate " vysvetlit ako presne funguje zadavanie funkcie do main, lebo stale moc nerozumiem ake hodnoty dat do zatvorky tej funkcie. Popripade nejaku stranku, pisanu pre laikov s C.
|
|
Registrovaný: 11.01.09 Prihlásený: 10.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
V nazve temy mas cyklus for, ale na tuto ulohu mi pride nezmyselne pouzit for, tak ale ak to je takto v zadani, potom to mozes spravit nasledovne: prejdes cyklom for od a po b s tym, ze kazdy prvok vydelis cislom n a ak je zvysok po deleni nula ( nepouzijes operator / ale % ), dany vysledok vypis, ak nie, pokracuj v cykle.
K otazke s funkciou main: najprv ta len troska poopravim, main je funkcia a ta berie ako kazda ina funkcia parametre (argumenty). Asi mas na mysli toto, vsak?
Kód: int main( int argc, char* argv[] ) Prvy parameter argc ( argument count ) uvadza pocet parametrov, s kolkymi bol program spusteny. Druhy parameter ( argument vector ) je pole samotnych parametrov. A co je to ten parameter programu? Ak spustas program cez prikazovy riadok, tak parametre su oddelene medzerami: Kód: mojprogram.exe prvyParameter druhyParameter
Cize predchadzajuce spustenie programu by v maine bolo taketo: argc == 3, argv[0] == "mojprogram.exe", argv[1] == "prvyParameter", argv[2] == "druhyParameter".
|
|
Registrovaný: 09.04.11 Prihlásený: 11.01.14 Príspevky: 257 Témy: 26 | 26 Bydlisko: Kesa |
Je to fakt v cykle for, a typujem že si z STU (API), lebo presne tento príklad bol teraz na cvikách A pozor. Ani jedna z tých úloch nebola myslená dať volačo do main, ale vytvoriť samostatné funkcie, ktoré budeš v programe main volať. A v tej otázke ti chýba, po aké číslo sa má cyklus for načítavať (n). Lebo darmo tam máš interval, keď nevie, že kolko máš tých čísiel načítať X je totiž len násobok toho čísla.
Kód: #include <stdio.h>
int funkcia (int n, int x, int a, int b);
int main () { int n, x; int a, b;
printf ("Zadaj pocet cisiel: "); scanf ("%i", &n); printf ("Zadaj nasobok cisla: "); scanf ("%i", &x); printf ("Zadaj interval v tvare <a b>: "); scanf ("%i %i", &a, &b); funkcia (n, x, a, b); }
int funkcia (int n, int x, int a, int b) { int i; for (i = 0; i < n; i++) { if ((i * x) >= a && (i * x) <= b) printf ("%i ", i * x); } return i; }
Neviem čo presne nechápeš, tak sa kludne spýtaj
_________________ NB - HP Pavilion DV7 3190 -- Windows® 7 Home Premium 64-bit -- Intel® Core™ i7-720QM 1,6 GHz az 2,8 Ghz Turbo Boost, 6 MB pamäte cache úrovne 2 -- 4 GB DDR3 -- disk 640 GB SATA 5400 ot/min -- rozlíšenie 1600 x 900 -- NVIDIA® GeForce® GT 230M -- 2 815 MB grafickej pamäte s vyhradenou pamäťou 1 GB DDR3 -- pripojenie 802.11 a/b/g/n |
|
Registrovaný: 11.01.09 Prihlásený: 10.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
street_punk píše: A v tej otázke ti chýba, po aké číslo sa má cyklus for načítavať (n). Ako to mozes vediet? Co ak ma ine zadanie? Treba odpovedat priamo na otazku, nie si ju dokraslit. street_punk píše: Lebo darmo tam máš interval, keď nevie, že kolko máš tých čísiel načítať X je totiž len násobok toho čísla.
A preco by nevedel? Ved to ma priamo v mojom popise vyssie:
Kód: void findAllMultiples( int a, int b, int x ) {
int i;
for ( i = a; i <= b; i++ ) if ( ( i % x ) == 0 ) printf( "%d ", i );
}
|
|
Registrovaný: 16.11.11 Prihlásený: 26.11.11 Príspevky: 4 Témy: 0 | 0 |
zdravicko mam mensi problem s programom papier kamen noznice .vypisuje mi zle vyhru a prehru asi nekde chyba v zapise if niesom isty pls o opravu uz som skusil snad vsetko ď
Kód: [b]CODE:
#include "stdafx.h" #include"iostream" #include"math.h" #include<cstdlib> #include<ctime>
using namespace std;
int main(void) {int x,a,b; do{ cout<<"Hra kamen,papier,noznice! Zvol si jednu moznost a zistis kto je vitaz\nPre kamen zadaj cislo 1 papier-2 noznice-3\nPo remize zacinas znova"; cin>>b; switch(b) {case 1:cout<<"kamen\n";break; case 2:cout<<"papier\n";break; case 3:cout<<"noznice\n";break; default:cout<<"zly sintax\n",system("PAUSE");return 0; }
const int MIN = 1, MAX = 3; srand( (unsigned int) time(NULL) ); x = rand(); x = rand() % (MAX-MIN + 1) + MIN; switch(x) {case 1:cout<<"kamen\n";break; case 2:cout<<"papier\n";break; case 3:cout<<"noznice\n";break;
}
}while(b==x);
if((b=1)&&(x=2))cout<<"prehral si" ; else if((b=2)&&(x=1))cout<<"vyhral si"; else if((b=2)&&(x=3))cout<<"prehral si"; else if((b=3)&&(x=2))cout<<"vyhral si"; else if((b=1)&&(x=3))cout<<"vyhral si"; else if((b=3)&&(x=1))cout<<"prehral si";
system("PAUSE"); return 0 ; }
[/b]
|
|
Registrovaný: 27.12.08 Prihlásený: 13.12.22 Príspevky: 1874 Témy: 96 | 96 Bydlisko: Bratislava,... |
znak rovná sa v podmienke je ==, ty tam máš iba jedno =..
okrem toho tam máš zbytočne definované konštanty, ktoré aj tak použiješ len raz a prvý riadok s rand(); je absolútne zbytočný..
_________________ ~Listen to your brain, not your heart~ NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot) NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI) |
|
Registrovaný: 16.11.11 Prihlásený: 26.11.11 Príspevky: 4 Témy: 0 | 0 | |
Registrovaný: 16.11.11 Prihlásený: 26.11.11 Príspevky: 4 Témy: 0 | 0 |
jedna z dalsich potrebujem aby som si zadal pocet prvkov pola z klavesnice no neviem kde robim chybu
Kód: #include "stdafx.h" #include "iostream" #include "math.h" #include <ctime> #include <cstdlib>
using namespace std;
int main(void) {int i;
const int y; cin>>y; int x[y];
cout<<"napln pole dvojcifernymi cislami\n"; for (i=0; i<y; i++) {cin>>x[i] ; } for (i=0; i<y; i++) {cout<<x[i]<<""<<' ';} system ("PAUSE"); return 0;
|
|
Registrovaný: 11.01.09 Prihlásený: 10.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
Nemozes ukladat data do konstantnej premennej ( logicky ), ako to robis tuna:
Kód: const int y; cin>>y; Konstanta uz musi byt dana v dobe navrhu programu. Oprava: Kód: #include <iostream>
using namespace std;
int main(void) {
int i, y;
cin >> y;
int x[y];
cout<<"napln pole dvojcifernymi cislami\n";
for (i=0; i<y; i++) cin >> x[i];
for (i=0; i<y; i++) cout << x[i] << "" << ' ';
return 0;
}
|
|
Registrovaný: 16.11.11 Prihlásený: 26.11.11 Príspevky: 4 Témy: 0 | 0 |
no ano tak som to mal ale podsiarkne my pole x[y] ze nieje konstanta a potom to cele program preskoci a ani nic nezadavam z klavesnice az potom tie konkretne hodnoty pola
|
|
Registrovaný: 11.01.09 Prihlásený: 10.05.24 Príspevky: 1385 Témy: 9 | 9 Bydlisko: Hrinova |
Tak neviem, ale g++ s tym kodom nema problem. Mozes este pouzit dynamicku alokaciu:
Kód: #include <iostream>
using namespace std;
int main(void) {
int i, y; int* x;
cin >> y; x = new int[y];
cout<<"napln pole dvojcifernymi cislami\n";
for (i=0; i<y; i++) cin >> x[i];
for (i=0; i<y; i++) cout << x[i] << "" << ' ';
delete [] x; return 0;
}
|
|
Stránka: 1 z 1
| [ Príspevkov: 11 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v PHP, ASP | 8 | 531 | 20.11.2010 16:13 venom2 | | v Technológia .NET | 1 | 511 | 28.03.2013 19:01 walther | | v HTML, XHTML, XML, CSS | 6 | 555 | 29.10.2013 15:21 Beatdownhaus | | v JavaScript, VBScript, Ajax | 8 | 613 | 04.09.2011 9:49 camo | | v Delphi, Visual Basic | 3 | 736 | 21.05.2009 11:19 Patkoo | | v Ostatné | 2 | 373 | 13.06.2018 17:14 void | | v Assembler, C, C++, Pascal, Java | 3 | 598 | 02.04.2010 13:24 vama | | v Assembler, C, C++, Pascal, Java | 2 | 602 | 25.08.2017 8:20 mitko | | v Ostatné programy | 1 | 1048 | 28.07.2009 17:10 PaloPa | | v Assembler, C, C++, Pascal, Java | 23 | 682 | 25.06.2015 23:43 magic | | v Assembler, C, C++, Pascal, Java | 2 | 853 | 01.01.2010 16:58 jarrro | | v Assembler, C, C++, Pascal, Java | 7 | 387 | 05.02.2017 20:18 GamerSK | | v PHP, ASP | 4 | 308 | 02.02.2013 16:36 Ďuri | | v Ostatné | 3 | 713 | 17.05.2018 16:11 Winnetou | | v PHP, ASP | 5 | 372 | 08.10.2010 17:37 shaggy | | v Assembler, C, C++, Pascal, Java | 1 | 424 | 07.03.2011 10:53 chrono |
|