| | |
| 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 |
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ý: 29.03.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 15.10.2011 16:27 | |
|
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 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ý: 29.03.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 16.10.2011 10:05 | |
|
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 | Napísal Viper: 16.11.2011 22:16 | |
|
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 Bydlisko: Bratislava,... | Napísal nBXXL: 16.11.2011 22:35 | |
|
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 | Napísal Viper: 16.11.2011 22:58 | |
|
diki moc slape to
|
|
Registrovaný: 16.11.11 Prihlásený: 26.11.11 Príspevky: 4 Témy: 0 | Napísal Viper: 26.11.2011 11:54 | |
|
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ý: 29.03.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 26.11.2011 12:16 | |
|
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 | Napísal Viper: 26.11.2011 12:23 | |
|
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ý: 29.03.24 Príspevky: 1385 Témy: 9 Bydlisko: Hrinova | Napísal Fico: 26.11.2011 13:57 | |
|
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 |
---|
| PHP cyklus for v PHP, ASP | 8 | 529 | 20.11.2010 16:13 venom2 | | C# Cyklus For, inicializovanie a vytvorenie "labelov" pomoc v Technológia .NET | 1 | 503 | 28.03.2013 19:01 walther | | CUSTOM CSS FOR MAIN CONTENT AREA ONLEY FOR MAIN PAGE v HTML, XHTML, XML, CSS | 6 | 539 | 29.10.2013 15:21 Beatdownhaus | | Nekonečný cyklus v JavaScript, VBScript, Ajax | 8 | 608 | 04.09.2011 9:49 camo | | diagram cyklus v Ostatné | 2 | 364 | 13.06.2018 17:14 void | | VB - cyklus v Delphi, Visual Basic | 3 | 730 | 21.05.2009 11:19 Patkoo | | [pascal] nekonecny cyklus v Assembler, C, C++, Pascal, Java | 3 | 592 | 02.04.2010 13:24 vama | | JAVA, FOREACH CYKLUS v Assembler, C, C++, Pascal, Java | 2 | 594 | 25.08.2017 8:20 mitko | | nekonečný cyklus v jave v Assembler, C, C++, Pascal, Java | 2 | 848 | 01.01.2010 16:58 jarrro | | EXCEL - cyklus na combobox v Ostatné programy | 1 | 1044 | 28.07.2009 17:10 PaloPa | | makro feof a cyklus v Assembler, C, C++, Pascal, Java | 23 | 674 | 25.06.2015 23:43 magic | | karel v C - nefunguje cyklus v Assembler, C, C++, Pascal, Java | 11 | 1029 | 12.05.2010 22:09 Shwollo | | Cyklus na zistenie interpunkčného znaku v Assembler, C, C++, Pascal, Java | 7 | 380 | 05.02.2017 20:18 GamerSK | | update velkeho mnozstva dat - cyklus? v PHP, ASP | 4 | 303 | 02.02.2013 16:36 Ďuri | | Excel - VBA - ako riesit cyklus? v Ostatné | 3 | 690 | 17.05.2018 16:11 Winnetou | | Cyklus v dopyte na databazu v PHP, ASP | 5 | 367 | 08.10.2010 17:37 shaggy |
| 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
|
|