Strona 1
Poziom 2 | Kurs C++
2011-11-12 15:39:43
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/345
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
$XWRU 3LRWU 6]DZG\ĔVNL
3R]LRP
>G]LDá NXUVX@
&]ĊĞü ,, 3RGVWDZ\ SURJUDPRZDQLDZ & :\PDJD GRVNRQDáHJR RSDQRZDQLD SLHUZV]HM F]ĊĞFL NXUVX & R]QDF]RQHJR MDNR
ª
.XUV &
3R]LRP
G]LDá NXUVX
2PyZLRQH ]DJDGQLHQLD SĊWOD GR ZKLOH SVHXGRORVRZH OLF]E\ FDáNRZLWH IXQNFMH Z SRGVWDZRZ\P ]DNUHVLH WDEOLFH MHGQRZ\PLDURZH SU]HND]\ZDQLH
WDEOLF GR IXQNFML VáRZR NOXF]RZH UHWXUQ ORVRZDQLH OLF]E FDáNRZLW\FKEH] SRZWyU]HĔ RUD] SĊWOD IRU
2SLV V]F]HJyáRZ\
1LQLHMV]D F]ĊĞü NXUVX RPDZLD QDMZDĪQLHMV]H HOHPHQW\ MĊ]\ND & NWyUH Z\NRU]\VW\ZDQH Vą GR WZRU]HQLD ZV]HONLFK DSOLNDFML
=DJDGQLHQLD R NWyU\FK PRĪHV] SU]HF]\WDü Z QLQLHMV]HM F]ĊĞFL NXUVX Vą RPyZLRQH Z ]DNUHVLH SRGVWDZRZ\P NRQFHQWUXMąF VLĊ W\ONR L
Z\áąF]QLH QD QDMZDĪQLHMV]\FK DVSHNWDFK 5R]G]LDá\ ]JURPDG]RQH Z QLQLHMV]HM F]ĊĞFL Z\PDJDMą ]QDMRPRĞFL FDáHJR PDWHULDáX
]JURPDG]RQHJR Z SLHUZV]HM F]ĊĞFL NXUVX NWyUD MHVW R]QDF]RQD MDNR
ª
.XUV &
3R]LRP
G]LDá NXUVX
=DGDQLD GRPRZH
=DGDQLD GRPRZH Z\PDJDMą ZLHG]\ NWyUD ]RVWDáD SU]HGVWDZLRQD Z SLHUZV]HM F]ĊĞFL NXUVX :LĊNV]RĞü ]DGDĔ VNRQVWUXRZDQD MHVW WDN E\
]PXV]DáD GR NUHDW\ZQHJR P\ĞOHQLD ĩDGQH ]DGDQLH QLH Z\PDJD ZLHG]\ ZLĊNV]HM QLĪ WR FR ]RVWDáR PyZLRQH Z UR]G]LDáDFK
SRSU]HG]DMąF\FK GDQH ]DGDQLH GRPRZH
3DPLĊWDM ĪH MHĪHOL QLH SRWUDILV] UR]ZLą]Dü MDNLHJRĞ ]DGDQLD WR ]QDF]\ ĪH QLH RSDQRZDáHĞ FDáHJR PDWHULDáX ]H ZF]HĞQLHMV]\FK UR]G]LDáyZ L
NRQLHF]QH EĊG]LH X]XSHáQLHQLH EUDNXMąFHM ZLHG]\ NWyUD ]RVWDáD RPyZLRQD ZH ZF]HĞQLHMV]\FK UR]G]LDáDFK
:\ND] HOHPHQWyZ GRZLą]DQ\FK
3ĊWOD GR ZKLOH
OHNFMD
5R]G]LDá 2PyZLHQLH SRMĊFLD F]\P MHVW SĊWOD SRGNUHĞOHQLH MHM ]QDF]HQLD RUD] RPyZLHQLH SĊWOL
GR ZKLOH
3VHXGRORVRZHOLF]E\ FDáNRZLWH
OHNFMD
5R]G]LDá : OHNFML RPyZLRQR Z MDNL VSRVyE JHQHUXMH VLĊ ORVRZH OLF]E\ FDáNRZLWH
)XQNFMH SLHUZV]H VWDUFLH
OHNFMD
5R]G]LDá &R WR Vą IXQNFMH L MDN VLĊ ] QLFK NRU]\VWD
7DEOLFH MHGQRZ\PLDURZH
OHNFMD
5R]G]LDá -HGQRZ\PLDURZH WDEOLFH ]PLHQQ\FK
3U]HND]\ZDQLHWDEOLF MHGQRZ\PLDURZ\FKGR IXQNFML
OHNFMD
5R]G]LDá 1LQLHMV]\ UR]G]LDá SRND]XMH SRGVWDZRZH WHFKQLNL SU]HND]\ZDQLD WDEOLF MHGQRZ\PLDURZ\FK GR IXQNFML
)XQNFMH D VáRZR NOXF]RZH UHWXUQ
OHNFMD
5R]G]LDá -DN G]LDáD VáRZR NOXF]RZH Z IXQNFMDFK L MDNLH Vą SUDNW\F]QH ]DOHW\ ] ZáDĞFLZHJR XĪ\ZDQLD ZVSRPQLDQHJR
VáRZD NOXF]RZHJR
/RVRZDQLH EH] SRZWyU]HĔ
OHNFMD
5R]G]LDá /RVRZDQLH OLF]E FDáNRZLW\FK EH] SRZWyU]HĔ
3ĊWOD IRU
OHNFMD
5R]G]LDá 2PyZLHQLH SĊWOL
for
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPLDXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] P
Ċ
tla do ... while | Kurs C++ » Poziom 2
2011-11-12 15:40:45
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-do-while/18
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
3ĊWOD GR ZKLOH
>OHNFMD@
5R]G]LDá 2PyZLHQLH SRMĊFLD F]\P MHVW SĊWOD SRGNUHĞOHQLHMHM ]QDF]HQLD RUD] RPyZLHQLH SĊWOL
GR ZKLOH
,P GDOHM W\P OĪHM SU]\QDMPQLHM GOD PQLH =DQLP SU]HMG]LHP\ GR PHU\WRU\F]QHM F]ĊĞFL QLQLHMV]HJR UR]G]LDáX ]DMPLHP\ VLĊ QDMSLHUZ
F]\PĞ GXĪR ZDĪQLHMV]\P WM SRVWDUDP XĞZLDGRPLü &L MDN ZDĪQH QDU]ĊG]LH Z W\P UR]G]LDOH SR]QDV]
'R F]HJR VáXĪą SĊWOH"
3ĊWOD Z QDMZLĊNV]\P XSURV]F]HQLX VáXĪ\ GR SRZWDU]DQLD LQVWUXNFML NWyUH FKFHP\ E\ VLĊ Z\NRQDá\ ZLĊFHM QLĪ UD] EH] NRQLHF]QRĞFL LFK
ZLHORNURWQHJR SLVDQLD Z NRG]LH
3U]\NáDGRZR ]DPLDVW SLVDü
instrukcja1;
instrukcja2;
instrukcja1;
instrukcja2;
instrukcja1;
instrukcja2;
PRĪHP\ ]DSLVDü WR VDPR NUyFHM LQIRUPXMąF NRPSLODWRU ĪH EORN LQVWUXNFML
instrukcja1;
instrukcja2;
PD VLĊ Z\NRQDü QS WU]\ UD]\ 2SHUDFMD SRZWDU]DQLD ZLHORNURWQHJR Z\EUDQ\FK IUDJPHQWyZ NRGX MHVW GR WHJR VWRSQLD LVWRWQD Z
SURJUDPRZDQLX ĪH MĊ]\N & XGRVWĊSQLD QDP DĪ WU]\ URG]DMH SĊWOL 3ĊWOH NWyUH SR]QDV] QLHEDZHP UyĪQLą VLĊ GUREQ\PL V]F]HJyáDPL
MHGQDN LFK LGHD MHVW WD VDPD SRZWDU]Dü Z\EUDQH IUDJPHQW\ NRGX
&R SRZLQQLĞP\QD SRF]ąWHN ZLHG]LHü R SĊWODFK"
3ĊWOH Vą SU]HGH ZV]\VWNLP QDMSRWĊĪQLHMV]\P QDU]ĊG]LHP Z UĊNX SURJUDPLVW\ ']LĊNL SĊWORP PRĪHP\ SLVDü NRG NUyWV]\ F]\WHOQLHMV]\ L
áDWZLHMV]\ Z XWU]\PDQLX :VSRPQLDQH FHFK\ Vą EDUG]R ZDĪQ\PL DWU\EXWDPL GOD GREUHJR SURJUDPLVW\ 0D RQ ERZLHP WZRU]\ü NUyWNL L
]ZLĊ]á\ NRG NWyU\ EĊG]LH MHGQRF]HĞQLH áDWZ\ Z XWU]\PDQLX
6NáDGQLD SĊWOL GR ZKLOH
C/C++
do
{
//... tu powtarzany kod
}
while
(
warunek_konczacy
)
;
.RG NWyU\ PD E\ü SRZWDU]DQ\ XPLHV]F]DP\ ZHZQąWU] EORNX LQVWUXNFML NWyU\ MHVW SRSU]HG]RQ\ VáRZHP NOXF]RZ\P RUD] ]DNRĔF]RQ\
VáRZHP NOXF]RZ\P /LF]ED SRZWyU]HĔ LQVWUXNFML XPLHV]F]RQ\FK Z EORNX SĊWOL żżż MHVW ]DOHĪQD RG ZDUXQNX NRĔF]ąFHJR
SĊWOĊ 3ĊWOD GR ZKLOH ]DNRĔF]\ VLĊ JG\ ZDUXQHN XPLHV]F]RQ\ Z QDZLDVDFK ]DRNUąJORQ\FK ]ZUyFL ZDUWRĞü ,VWRWQą FHFKą SĊWOL
żżż
MHVW IDNW ĪH NRG ]DZDUW\ PLĊG]\ VáRZDPL NOXF]RZ\PL żżż ]DZV]H Z\NRQD VLĊ FRQDMPQLHM MHGHQ UD]
3U]\NáDG\
6NRUR MXĪ ZLHP\ Z WHRULL FR WR MHVW SĊWOD RUD] ]DSR]QDOLĞP\ VLĊ MDN VLĊ IRUPDOQLH ]DSLVXMH SĊWOĊ żżż WR SU]HDQDOL]XM WHUD]
NLOND SU]\NáDGyZ NWyUH Z SUDNW\FH ]DGHPRQVWUXMą &L MHM G]LDáDQLH 6SUyEXM SU]HZLG]LHü MDNL EĊG]LH Z\QLN G]LDáDQLD NDĪGHJR ]
SU]\NáDGRZ\FK SURJUDPyZ D QDVWĊSQLH VSUDZGĨ F]\ SURJUDP ]DFKRZDá VLĊ ]JRGQLH ] 7ZRLPL SU]HZLG\ZDQLDPL
C/C++
#include <iostream>
int
main
()
{
int
ile
=
4
;
do
{
std
::
cout
<<
"Napis"
<<
std
::
endl
;
Strona 2
[lekcja] P
Ċ
tla do ... while | Kurs C++ » Poziom 2
2011-11-12 15:40:45
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-do-while/18
ile
--
;
}
while
(
ile
>
0
)
;
return
0
;
}
C/C++
#include <iostream>
int
main
()
{
int
ile
;
std
::
cout
<<
"Ile razy wypisac napis? "
;
std
::
cin
>>
ile
;
if
(
ile
>
0
)
do
{
std
::
cout
<<
"Napis"
<<
std
::
endl
;
ile
--
;
}
while
(
ile
>
0
)
;
return
0
;
}
C/C++
#include <iostream>
int
main
()
{
int
ile
;
std
::
cout
<<
"Ile razy wypisac napis? "
;
std
::
cin
>>
ile
;
int
pozycja
=
1
;
if
(
ile
>
0
)
do
{
std
::
cout
<<
"Napis nr"
<<
pozycja
<<
std
::
endl
;
pozycja
++
;
ile
--
;
}
while
(
ile
>
0
)
;
return
0
;
}
C/C++
#include <iostream>
int
main
()
{
int
liczba
;
do
{
std
::
cout
<<
"Podaj liczbe 123 aby zakonczyc petle"
<<
std
::
endl
;
std
::
cin
>>
liczba
;
std
::
cout
<<
"Podales liczbe "
<<
liczba
<<
std
::
endl
;
}
while
(
liczba
!=
123
)
;
std
::
cout
<<
"Koniec"
<<
std
::
endl
;
return
0
;
}
=DGDQLH GRPRZH
1DSLV] SURJUDP NWyU\ ZF]\WD OLF]EĊ D QDVWĊSQLH Z\SLV]H Mą QD HNUDQLH =DEH]SLHF] SU]HG ZF]\WDQLHP QLHSUDZLGáRZHM OLF]E\
:\NRU]\VWDM GR WHJR FHOX ZLHG]Ċ ] MHGQHJR ] SRSU]HGQLFK UR]G]LDáyZ 6SRVyE G]LDáDQLD SURJUDPX
3RGDM OLF]EĊ
-HĪHOL EáąG ZUyü GR NURNX
:\SLV] OLF]EĊ NWyUD ]RVWDáD SRGDQD
1DSLV] SURVW\ NDONXODWRU NWyU\ EĊG]LH SRWUDILá GRGDZDü RGHMPRZDü PQRĪ\ü L G]LHOLü 3URJUDP WHQ PD G]LDáDü QDVWĊSXMąFR
:\SLVXMH REHFQ\ Z\QLN
:SURZDGĨ OLF]EĊ
:\ELHU] G]LDáDQLH MHĪHOL OLF]ED UyĪQD RG
:\NRQDM REOLF]HQLD MHĪHOL OLF]ED UyĪQD RG
:Uyü GR NURNX
Strona 3
[lekcja] P
Ċ
tla do ... while | Kurs C++ » Poziom 2
2011-11-12 15:40:45
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-do-while/18
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
-HĪHOL ZSURZDG]RQą OLF]Eą MHVW ]DNRĔF] SURJUDP
3U]\NáDGRZH PHQX Z\ERUX G]LDáDQLD
[1] Dodawanie
[2] Odejmowanie
[3] MnoĪenie
[4] Dzielenie
[5] Rezygnuj
=DEH]SLHF] ZF]HĞQLHM QDSLVDQ\ NDONXODWRU SU]HG SRGDZDQLHP QLHSRSUDZQ\FK OLF]E L RSHUDFML :\NRU]\VWDM ZLHG]Ċ ]GRE\Wą ] SLHUZV]HJR
]DGDQLD SUDF\ GRPRZHM QLQLHMV]HJR UR]G]LDáX =DEH]SLHF] UyZQLHĪ Z DQDORJLF]Q\ VSRVyE SU]HG PRĪOLZRĞFLą Z\ERUX QLHSUDZLGáRZHJR
G]LDáDQLD
3RGVXPRZDQLH
3U]HDQDOL]XM XZDĪQLH G]LDáDQLH ZV]\VWNLFK SURJUDPyZ ] QLQLHMV]HJR UR]G]LDáX 1LH UR]SRF]\QDM NROHMQHJR UR]G]LDáX MHĪHOL QLH ]UR]XPLDáHĞ
G]LDáDQLD SĊWOL RUD] QLH Z\NRQDáHĞ ZV]\VWNLFK ]DGDĔ ] QLQLHMV]HJR UR]G]LDáX 'OD SRF]ąWNXMąFHJR SURJUDPLVW\ QLQLHMV]\ UR]G]LDá MHVW
SLHUZV]\P SXQNWHP NU\W\F]Q\P NWyU\ NRQLHF]QLH WU]HED RSDQRZDü ]DQLP ]DF]QLH VLĊ SLVDü SURVWH DSOLNDFMH
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] Pseudolosowe liczby całkowite | Kurs C++ » Poziom 2
2011-11-12 17:07:52
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Pseudolosowe-liczby-calkowite/290
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
3VHXGRORVRZH OLF]E\ FDáNRZLWH
>OHNFMD@
5R]G]LDá : OHNFML RPyZLRQR Z MDNL VSRVyE JHQHUXMH VLĊ ORVRZH OLF]E\ FDáNRZLWH
.ROHMQ\ UR]G]LDá NROHMQH Z\]ZDQLH W\P UD]HP GRZLHP\ VLĊ Z MDNL VSRVyE PRĪHP\ JHQHURZDü SVHXGRORVRZH OLF]E\ FDáNRZLWH
)XQNFMD ORVXMąFD OLF]E\ FDáNRZLWH SRFKRG]L ]H VWDQGDUGRZHM ELEOLRWHNL MĊ]\ND & %LEOLRWHNĊ NWyUą QDOHĪ\ GRáąF]\ü MHVW FVWGOLE 2]QDF]D WR
Z NRQVHNZHQFML ĪH Z QDV]\P SURJUDPLH PRĪHP\ E\ü ]PXV]HQL GR GRSLVDQLD QDVWĊSXMąFHM OLQLMNL
C/C++
#include <cstdlib>
3DPLĊWDM ĪH ZVSRPQLDQD OLQLMND QLH PXVL NRQLHF]QLH Z\VWąSLü Z QDV]\P SURJUDPLH MHĪHOL GRáąF]\OLĞP\ LQQą ELEOLRWHNĊ NWyUD XĪ\ZD
ELEOLRWHNL FVWGOLE
)XQNFMD ORVXMąFD
-HĪHOL PDP\ MXĪ GRáąF]RQą ELEOLRWHNĊ FVWGOLE GR QDV]HJR SURJUDPX WR SRVLDGDP\ UyZQLHĪ MXĪ GRVWĊS GR IXQNFML ORVXMąFHM
ª
&
UDQG
)XQNFMD WD SR SURVWX ORVXMH QDP OLF]EĊ FDáNRZLWą /LF]ED WD PLHĞFLü VLĊ EĊG]LH Z SU]HG]LDOH RG GR
ª
&
5$1'B0$;
JG]LH
ª
&
5$1'B0$;
MHVW VWDáą NWyUD MHVW ]DOHĪQD RG SRVLDGDQHJR NRPSLODWRUD L SRVLDGDQ\FK ELEOLRWHN :LĊFHM V]F]HJyáyZ QD WHPDW
SRV]F]HJyOQ\FK ]DJDGQLHĔ PRĪHV] GRF]\WDü VRELH Z GRNXPHQWDFML MHGQDN QD FKZLOĊ REHFQą QLH MHVW WR NRQLHF]QH
6NXSP\ VLĊ WHUD] QD XĪ\FLX IXQNFML Z SUDNW\FH )XQNFMD
ª
&
UDQG
MHVW EDUG]R SURVWD Z XĪ\FLX GODWHJR WHĪ SU]HMGĊ RGUD]X GR NUyWNLHJR
SU]\NáDGX
C/C++
#include <iostream>
#include <cstdlib>
int
main
()
{
std
::
cout
<<
"Wylosowanie pierwsze: "
<<
rand
() <<
std
::
endl
;
int
liczba
=
rand
()
;
std
::
cout
<<
"Wylosowanie drugie: "
<<
liczba
<<
std
::
endl
;
liczba
=
rand
()
;
std
::
cout
<<
"Wylosowanie trzecie: "
<<
liczba
<<
std
::
endl
;
return
0
;
}
-DN ZLGDü XĪ\FLH IXQNFML MHVW EDUG]R SURVWH
.RQILJXUDFMDPDV]\Q\ ORVXMąFHM
-HĪHOL XUXFKRPLP\ NLOND UD]\ SRZ\ĪV]\ SURJUDP WR ]DXZDĪ\P\ ĪH NRPSXWHU Z\ORVRZDá QDP ]D NDĪG\P UD]HP WH VDPH OLF]E\ 7DNLH
]DFKRZDQLH RF]\ZLĞFLH QLH MHVW SRĪąGDQH GODWHJR WHĪ Z\PDJDQH MHVW VNRQILJXURZDQLH JHQHUDWRUD OLF]E ORVRZ\FK = SRPRFą SU]\FKRG]L
QDP NROHMQD IXQNFMD L MHVW QLą
ª
&
VUDQG
)XQNFMD
ª
&
VUDQG
XVWDZLD SXQNW VWDUWRZ\ GOD PHFKDQL]PX JHQHURZDQLD NROHMQ\FK OLF]E
FDáNRZLW\FK : GXĪ\P XSURV]F]HQLX QDSLVDQLH
srand
(
123
)
;
XVWDZL SXQNW VWDUWRZ\ D ]DSLV
srand
(
543
)
;
XVWDZL SXQNW
VWDUWRZ\ &R WR GDMH" : VXPLH W\OH ĪH ORVRZDQH Vą LQQH OLF]E\ -HGQDN DE\ X]\VNDü NDĪGRUD]RZR LQQH Z\ORVRZDQH ZDUWRĞFL Z UD]
VNRPSLORZDQ\P SURJUDPLH QDOHĪ\ SRZLą]Dü IXQNFMĊ
ª
&
VUDQG
] F]DVHP U]HF]\ZLVW\P XVWDZLRQ\P REHFQLH Z NRPSXWHU]H 7X EĊG]LHP\
]PXV]HQL GRáąF]\ü NROHMQ\ SOLN QDJáyZNRZ\ L MHVW QLP %LEOLRWHND GRVWDUF]\ QDP PLĊG]\ LQQ\PL IXQNFMĊ
ª
&
WLPH
NWyUD
]ZUDFD REHFQ\ F]DV QD NRPSXWHU]H Z SRVWDFL OLF]E\ ZLĊFHM V]F]HJyáyZ QLH PXVLV] ZLHG]LHü QD FKZLOĊ REHFQą -HĞOL MHGQDN FKFLDáE\Ğ
ZLHG]LHü ZLĊFHM WR PRĪHV] VSRNRMQLH SU]HF]\WDü GRNXPHQWDFMĊ IXQNFML
ª
&
WLPH
.RĔF]ąF WHQ SU]\GáXJDZ\ Z\ZyG L PDP QDG]LHMĊ
]DVSRNDMDMąF 7ZRMą FLHNDZRĞü FR GR F]HJR VáXĪ\ SU]HMGĨP\ GR ILQDOQHM SRVWDFL OLQLMNL NRQILJXUXMąFHM PDV]\QĊ ORVXMąFą
C/C++
srand
(
time
(
NULL
) )
;
1D NRQLHF ZDUWR GRGDü ĪH SRZ\ĪV]ą OLQLMNĊ Z\VWDUF]\ Z\ZRáDü W\ONR UD] QD VDP\P SRF]ąWNX SURJUDPX L RG WHJR PRPHQWX PRĪHP\
FLHV]\ü VLĊ SVHXGRORVRZRĞFLą OLF]E FDáNRZLW\FK Z QDV]\P SURJUDPLH 3RSUDZLRQ\ NRG Z\JOąGD WHUD] WDN
C/C++
Strona 2
[lekcja] Pseudolosowe liczby całkowite | Kurs C++ » Poziom 2
2011-11-12 17:07:52
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Pseudolosowe-liczby-calkowite/290
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
#include <iostream>
#include <cstdlib>
#include <ctime>
int
main
()
{
srand
(
time
(
NULL
) )
;
std
::
cout
<<
"Wylosowanie pierwsze: "
<<
rand
() <<
std
::
endl
;
int
liczba
=
rand
()
;
std
::
cout
<<
"Wylosowanie drugie: "
<<
liczba
<<
std
::
endl
;
liczba
=
rand
()
;
std
::
cout
<<
"Wylosowanie trzecie: "
<<
liczba
<<
std
::
endl
;
return
0
;
}
/RVRZDQLHOLF]E ] RNUHĞORQHJR]DNUHVX
/RVRZDQLH OLF]E ] WDN GXĪHJR ]DNUHVX MDNL GRVWDUF]D QDP IXQNFMD
ª
&
UDQG
U]DGNR NLHG\ MHVW QDP SRWU]HEQH =QDF]QLH F]ĊĞFLHM LQWHUHVXMH
QDV ORVRZDQLH OLF]E ] SHZQHJR SU]HG]LDáX -HĪHOL RF]HNXMHV] Z W\P PRPHQFLH NROHMQHM IXQNFML NWyUD ]DáDWZL &L VSUDZĊ WR MHVWHĞ Z
EáĊG]LH :\VWDUF]\ &L ZLHG]D NWyUą REHFQLH SRVLDGDV] FKRü SUDZGRSRGREQQLH QLH ]GDMHV] QDZHW VRELH ] WHJR VSUDZ\ -HG\QH FR GR WHJR
SRWU]HEXMHP\ WR Z\NRU]\VWDü G]LHOHQLH ] UHV]Wą L GRGDZDQLH 1DMSLHUZ XVWDODP\ LOH OLF]E PLHĞFL VLĊ Z SU]HG]LDOH ] NWyUHJR FKFHP\
ORVRZDü QS EĊG]LH WR OLF]E 1DVWĊSQLH XVWDODP\ SLHUZV]ą ORVRZDQą OLF]EĊ ]DáyĪP\ 7HUD] VNáDGDP\ WR GR NXS\ QDVWĊSXMąF\P
Z]RUHP
C/C++
int
wylosowana_liczba
=(
rand
() %
ile_liczb_w_przedziale
) +
startowa_liczba
;
.RQNUHW\]XMąF SRZ\ĪV]\ ]DSLV GR Z\ĪHM SU]\WRF]RQHJR SU]\NáDGX ]DSLV SRZ\ĪV]\ EĊG]LH Z\JOąGDá WDN
C/C++
int
wylosowana_liczba
=(
rand
() %
50
) +
7
;
2VWDWHF]QLH SURJUDP ORVXMąF\ OLF]E\ ] SU]HG]LDáX RG GR EĊG]LH ZLĊF Z\JOąGDá WDN
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
int
main
()
{
srand
(
time
(
NULL
) )
;
std
::
cout
<<
"Wylosowanie pierwsze: "
<<((
rand
() %
50
) +
7
) <<
std
::
endl
;
int
liczba
=(
rand
() %
50
) +
7
;
std
::
cout
<<
"Wylosowanie drugie: "
<<
liczba
<<
std
::
endl
;
liczba
=(
rand
() %
50
) +
7
;
std
::
cout
<<
"Wylosowanie trzecie: "
<<
liczba
<<
std
::
endl
;
return
0
;
}
=DGDQLH GRPRZH
7ZRLP ]DGDQLHP GRPRZ\P MHVW QDSLVDQLH SURVWHM JU\ NWyUD PD G]LDáDü QDVWĊSXMąFR
3URJUDP ORVXMH OLF]EĊ ] SU]HG]LDáX RG GR
8Ī\WNRZQLN ]JDGXMH OLF]EĊ NWyUD ]RVWDáD Z\ORVRZDQD
-HĪHOL SRGDQD OLF]ED MHVW ]D GXĪD ]D PDáD JUD Z\SLVXMH VWRVRZQ\ NRPXQLNDW L SRZUDFD GR NURNX
-HĪHOL JUDF] WUDIL OLF]EĊ Z\ORVRZDQą WR SURJDP NRĔF]\ G]LDáDQLH Z\SLVXMąF QD HNUDQ Z\ORVRZDQą OLF]EĊ RUD] OLF]EĊ
VWU]DáyZ
NWyUH
RGGDá JUDF]
*UD PD E\ü ]DEH]SLHF]RQD SU]HG PRĪOLZRĞFLą ZSURZDG]HQLD EáĊGQ\FK ZDUWRĞFL OLF]ERZ\FK
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] Funkcje - pierwsze starcie | Kurs C++ » Poziom 2
2011-11-12 17:06:50
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-pierwsze-starcie/291
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
)XQNFMH SLHUZV]H VWDUFLH
>OHNFMD@
5R]G]LDá &R WR Vą IXQNFMH L MDN VLĊ ] QLFK NRU]\VWD
.RU]\VWDMąF ] SU]\Sá\ZX ZHQ\ SLVDUVNLHM D QLH WHM ĞFLVáR QDXNRZHM Z\NRU]\VWDP WHQ G]LHĔ QD QDSLVDQLH NROHMQHJR UR]G]LDáX QLQLHMV]HJR
NXUVX & : REHFQ\P UR]G]LDOH RPyZLRQH ]RVWDQą IXQNFMH Z ]DNUHVLH SRGVWDZRZ\P G]LĊNL NWyU\P EĊG]LHV] PyJá SLVDü NRG OHSV]\
F]\WHOQLHMV]\ L SU]HGH ZV]\VWNLP áDWZLHMV]\ Z XWU]\PDQLX &]\ WDN EĊG]LH Z SUDNW\FH" 7R MXĪ ]DOHĪ\ W\ONR RG &LHELH WM RG WHJR ] MDNLP
]DDQJDĪRZDQLHP GR REHFQLH F]\WDQHJR UR]G]LDáX SRGHMG]LHV]
&R WR Vą IXQNFMH L DUJXPHQW\
6NRUR ZVWĊS MXĪ PDP\ ]D VREą Z\MDĞQLMP\ VRELH QD SRF]ąWHN F]\P Vą IXQNFMH Z MĊ]\NDFK SURJUDPRZDQLD WDNLFK MDN & L & )XQNFMD
MHVW WR IUDJPHQW SURJUDPX NWyUHPX QDGDQR QD]ZĊ L NWyU\ PRĪHP\ Z\NRQDü SRSU]H] SRGDQLH MHJR QD]Z\ RUD] HZHQWXDOQ\FK
DUJXPHQWyZ R LOH LVWQLHMą $UJXPHQWDPL Vą QDWRPLDVW GDQH SU]HND]\ZDQH GR IXQNFML
%XGRZD IXQNFML
=REDF]P\ WHUD] MDN Z WHRULL ]EXGRZDQD MHVW IXQNFMD
C/C++
typ_zwracanej_wartosci nazwa_funkcji
(
typ_argumentu_1 nazwa_argumentu_1
/*,...*/
,
typ_argumentu_n nazwa_argumentu_n
)
{
return
zwracana_wartosc
;
}
: NXUVLH NWyU\ SLVDáHP NLOND ODW WHPX ]DZDUáHP QDVWĊSXMąFH VWZLHUG]HQLD
.DĪGD IXQNFMD SRVLDGD WU]\ ZáDVQRĞFL
]ZUDFD GDQH OXE QLH MHĞOL WHJR QLH FKFHP\
SRVLDGD VZRMą QD]ZĊ
PRĪH SRVLDGDü GRZROQą OLF]EĊ DUJXPHQWyZ ZHMĞFLRZ\FK OXE PRĪH QLH PLHü ĪDGQHJR MHĞOL WHJR QLH FKFHP\
6Láą U]HF]\ Z WHM NZHVWLL QLF VLĊ QLH ]PLHQLáR RG WDPWHJR F]DVX ZLĊF SRZ\ĪV]H VWZLHUG]HQLD Vą QDGDO MDN QDMEDUG]LHM DNWXDOQH L ZáDĞFLZH
)XQNFMD NWyUD QLH SU]\MPXMHDUJXPHQWyZL QLH ]ZUDFD ZDUWRĞFL
=DQLP SU]HMGĊ GR GDOV]HM WHRULL ]DWU]\PDMP\ VLĊ Z W\P PLHMVFX QD FKZLOĊ L VNXSP\ VLĊ QD SUDNW\F]QHM F]ĊĞFL 7ZRMHM HGXNDFML 1D
SRF]ąWHN ]DMPLMP\ VLĊ IXQNFMą NWyUD QLH ]ZUDFD ĪDGQHM ZDUWRĞFL DQL QLH SU]\MPXMH ĪDGQ\FK DUJXPHQWyZ
C/C++
void
to_jest_moja_funkcja
()
{
//INFO: tu kod Twojej funkcji
}
7DN Z\JOąGD QDMSURVWV]D IXQNFMD Z MĊ]\NDFK & L & 6áRZR NOXF]RZH LQIRUPXMH NRPSLODWRU MDN UyZQLHĪ L SURJUDPLVWĊ ĪH IXQNFMD
QLH ]ZUDFD ĪDGQHM ZDUWRĞFL 1D]Zą IXQNFML Z W\P SU]\SDGNX MHVW ɏɏɏ
)XQNFMD QLH SU]\MPXMH ĪDGQ\FK DUJXPHQWyZ
ERZLHP ZHZQąWU] ]DRNUąJORQ\FK QDZLDVyZ MHVW SXVWR :HZQąWU] NODPU XPLHV]F]DP\ NRG NWyU\ PD VLĊ Z\NRQDü Z FKZLOL JG\ ]RVWDQLH
Z\ZRáDQD IXQNFMD -HVW WR EORN LQVWUXNFML NWyU\ ]ZLH VLĊ FLDáHP IXQNFML
:\ZRá\ZDQLHIXQNFML
:\ZRá\ZDQLH IXQNFML MHVW EDUG]R SURVWH Z\VWDUF]\ ZSLVDü MHM QD]ZĊ L SU]HND]Dü ZDUWRĞFL GR IXQNFML 2JyOQD SRVWDü Z\ZRáDQLD IXQNFML
Z\JOąGD QDVWĊSXMąFR
C/C++
nazwa_funkcji
(
wartosc_argumentu_1
/*,...*/
,
wartosc_argumentu_n
)
;
-DN ZLGDü XĪ\ZDQLH IXQNFML MHVW EDQDOQH
3U]\NáDG IXQNFML NWyUH QLH SU]\MPXMąDUJXPHQWyZL QLH ]ZUDFDMą ZDUWRĞFL
7HRULD WHRULą DOH ]REDF]P\ MDN WR Z\JOąGD Z SUDNW\FH
C/C++
Strona 2
[lekcja] Funkcje - pierwsze starcie | Kurs C++ » Poziom 2
2011-11-12 17:06:50
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-pierwsze-starcie/291
#include <iostream>
void
moja_funkcja
()
{
std
::
cout
<<
"[1] - dodawanie"
<<
std
::
endl
;
std
::
cout
<<
"[2] - odejmowanie"
<<
std
::
endl
;
std
::
cout
<<
"[0] - wyjscie z programu"
<<
std
::
endl
;
}
void
dodawanie
()
{
std
::
cout
<<
"Jeszcze nie oprogramowano"
<<
std
::
endl
;
}
void
odejmowanie
()
{
dodawanie
()
;
}
int
main
()
{
std
::
cout
<<
"W programie sa dostepne nastepujace opcje:"
<<
std
::
endl
;
moja_funkcja
()
;
std
::
cout
<<
"Zycze przyjemnego korzystania z programu"
<<
std
::
endl
<<
std
::
endl
;
int
liczba
;
do
{
moja_funkcja
()
;
std
::
cin
>>
liczba
;
switch
(
liczba
)
{
case
1
:
dodawanie
()
;
break
;
case
2
:
odejmowanie
()
;
break
;
default
:
break
;
}
//switch
}
while
(
liczba
!=
0
)
;
return
0
;
}
3U]HDQDOL]XM QD VSRNRMQLH SRZ\ĪV]\ SURJUDP SU]HWHVWXM MHJR G]LDáDQLH L ]DVWDQyZ VLĊ F]\ DE\ QD SHZQR ZV]\VWNR UR]XPLHV] L MHVW GOD
&LHELH MDVQH Z -HĪHOL QLH ]UyE VRELH NUyWNą SU]HUZĊ QD KHUEDWĊ SR F]\P ZUyü GR SRQRZQHM DQDOL]\ SURJUDPX NUyWNLH SU]HUZ\
GREU]H VáXĪą SURJUDPLVWRP
.RPHQWDU]GR SU]\NáDGX
-DN ZLGDü SURJUDP MHVW MXĪ WURFKĊ GáXĪV]\ QLĪ WH NWyUH GR WHM SRU\ SRMDZLDá\ VLĊ Z SU]\NáDGDFK 0XVLV] ZLHG]LHü ĪH NRG EĊG]LH EDUG]R
V]\ENR UR]UDVWDá VLĊ Z NDĪGHM SLVDQHM SU]H] &LHELH DSOLNDFML )XQNFMH QDOHĪą GR QDU]ĊG]L NWyUH XPRĪOLZLDMą &L SRG]LHOHQLH NRGX DSOLNDFML
QD PQLHMV]H F]ĊĞFL 7ZRU]HQLH IXQNFML MHVW QDMSRWĊĪQLHMV]ą EURQLą Z UĊNX SRF]ąWNXMąFHJR SURJUDPLVW\ NWyUH MHVW QLHVWHW\ SU]H] QLFK
VDP\FK QLH GRFHQLDQH L ] XSRUHP PDQLDND RPLMDQH V]HURNLP áXNLHP D WR EáąG ']LĊNL IXQNFMRP PRĪHV] Z\G]LHOLü IXQNFMRQDOQRĞü QS
RGSRZLHG]LDOQą ]D GRGDZDQLH L RGHMPRZDQLH GR RVREQ\FK EORNyZ NWyUH Vą SR SLHUZV]H QD]ZDQH D SR GUXJLH NUyWV]H ERZLHP FLDáR
IXQNFML UHDOL]XMH W\ONR IUDJPHQW FDáHJR SURJUDPX 1D]ZD IXQNFML SRZLQQD PyZLü SURJUDPLĞFLH ]D FR IXQNFMD MHVW RGSRZLHG]LDOQD G]LĊNL
WDNLHPX SRGHMĞFLX ZUDFDMąF GR NRGX SR PLHVLąFX DOER QDZHW SRGF]DV V]XNDQLD EáĊGX QLH EĊG]LHV] PXVLDá VNDNDü SR FDá\P NRG]LH W\ONR
SR IUDJPHQFLH NWyU\ MHVW RGSRZLHG]LDOQ\ QS ]D GRGDZDQLH
ûZLF]HQLH SUDNW\F]QH
'RNRĔF] Z\ĪHM SU]HGVWDZLRQ\ SURJUDP SRSUDZ IXQNFMH L WDN DE\ SLHUZV]D ] QLFK VXPRZDáD GZLH SRGDQH
OLF]E\ L Z\SLV\ZDáD Z\QLN D GUXJD RGHMPRZDáD GZLH OLF]E\ L Z\SLV\ZDáD Z\QLN 3R XNRĔF]HQLX SURJUDPX ]DVWDQyZ VLĊ MDN E\ Z\JOąGDá
NRG JG\E\Ğ QLH VNRU]\VWDá ] IXQNFML =DVWDQyZ VLĊ F]\ IDNW\F]QLH áDWZLHM EĊG]LH ]QDOHĨü HZHQWXDOQH EáĊG\ Z NRG]LH WZRU]RQ\P Z RSDUFLX
R IXQNFMH
=PLHQQH ZHZQąWU]IXQNFML F]\OL ]DVLĊJ ZLG]HQLD ]PLHQQ\FK
-HĪHOL Z\NRQDáHĞ üZLF]HQLH SUDNW\F]QH ] QLQLHMV]HJR UR]G]LDáX WR ]DSHZQH QLHĞZLDGRP\ QLF]HJR XWZRU]\áHĞ GZLH ]PLHQQH ZHZQąWU]
IXQNFML RUD] GZLH ]PLHQQH ZHZQąWU] IXQNFML -HĪHOL WHJR QLH ]URELáHĞ WR ]QDF]\ ĪH DOER QLH Z\NRQDáHĞ ]DGDQLD
DOER Z\NRQDáHĞ MH ĨOH ERZLHP XĪ\áHĞ ]PLHQQ\FK JOREDOQ\FK R NWyU\FK QLH SRZLQLHQHĞ QLF ZLHG]LHü -HĪHOL XĪ\áHĞ ]PLHQQ\FK JOREDOQ\FK WR
]QDF]\ ĪH DOER XĪ\áHĞ ,QWHUQHWX Z VSRVyE QLHZáDĞFLZ\ DOER MDNLĞ
PąGU\
NROHJD GRUDG]Lá &L QDMJRUV]H PRĪOLZH UR]ZLą]DQLH ]H ]PLHQQ\PL
Strona 3
[lekcja] Funkcje - pierwsze starcie | Kurs C++ » Poziom 2
2011-11-12 17:06:50
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-pierwsze-starcie/291
JOREDOQ\PL -HĪHOL VDP ZSDGáHĞ QD QLHSRSUDZQH UR]ZLą]DQLH WR GD VLĊ Z\EDF]\ü DOH UDF]HM MHVW WR PDáR SUDZGRSRGREQH MHĪHOL XF]\V]
VLĊ SURJUDPRZDQLD RG ]HUD ] QLQLHMV]HJR NXUVX 3U]\WRF]P\ QDMSLHUZ SRSUDZQLH QDSLVDQą IXQNFMĊ
C/C++
void
dodawanie
()
{
int
a
;
std
::
cin
>>
a
;
int
b
;
std
::
cin
>>
b
;
std
::
cout
<<
"Wynik dodawania "
<<
a
<<
" + "
<<
b
<<
" = "
<<
a
+
b
<<
std
::
endl
;
}
1D FKZLOĊ REHFQą QLH MHVW LVWRWQ\ IDNW ĪH QLH ]DEH]SLHF]\OLĞP\ IXQNFML SU]HG PRĪOLZRĞFLą ZSLVDQLD QLHSUDZLGáRZ\FK GDQ\FK ZDĪQ\ MHVW
WX IDNW ]DGHNODURZDQLD ]PLHQQ\FK RUD] W\SX =PLHQQH NWyUH XWZRU]\OLĞP\ ZHZQąWU] IXQNFML Vą ]PLHQQ\PL ORNDOQ\PL 2]QDF]D
WR ĪH QLH Vą RQH ZLGRF]QH SR]D IXQNFMą L LVWQLHMą RQH W\ONR Z REUĊELH GDQHM IXQNFML : SUDNW\FH R]QDF]D WR ĪH ] IXQNFML JáyZQHM
QLH EĊG]LHV] PLDá GRVWĊSX GR ]PLHQQ\FK L 3UyED X]\VNDQLD GRVWĊSX GR ]PLHQQHM ] IXQNFML ]DNRĔF]\ VLĊ QDVWĊSXMąF\P
EáĊGHP
In function 'int main()':|
error: 'a' was not declared in this scope|
.RPXQLNDW WHQ PyZL
: IXQNFML LQW PDLQ EáąG D QLH ]RVWDáR ]DGHNODURZDQH Z ]DVLĊJX
,QQ\PL VáRZ\ ]PLHQQD R Z\V]F]HJyOQLRQHM
QD]ZLH QLH LVWQLHMH Z FLHOH IXQNFML /LQLMND NWyUD VSRZRGRZDáD EáąG Z\JOąGDáD QDVWĊSXMąFR
C/C++
a
=
123
;
$QDORJLF]Q\ EáąG X]\VNDP\ JG\ ] IXQNFML VSUyEXMHP\ GRVWDü VLĊ GR ]PLHQQHM
NWyUD Z\VWĊSXMH Z FLHOH IXQNFML
:QLRVHN ] WHJR Sá\QLH SURVW\ IXQNFMH QLH ZLG]ą VZRLFK ]PLHQQ\FK QDZ]DMHP %DUG]R SLĊNQD ZáDVQRĞü IXQNFML NWyUą 7\ MHV]F]H EĊG]LHV]
QLH UD] SU]HNOLQDá
&]DV Ī\FLD ]PLHQQ\FKZ IXQNFMDFK
=PLHQQH NWyUH ]RVWDá\ XWZRU]RQH Z IXQNFML Vą ]PLHQQ\PL W\PF]DVRZ\PL =PLHQQH WH SRMDZLDMą VLĊ GR XĪ\WNX SU]\ NDĪG\P Z\ZRáDQLX
IXQNFML MDN UyZQLHĪ ]QLNDMą SR MHM RSXV]F]HQLX =PLHQQH WH QLH WU]\PDMą VWDQX ] SRSU]HGQLHJR Z\ZRáDQLD LQQ\PL VáRZ\ ]D NDĪG\P
UD]HP SR ZHMĞFLX Z IXQNFMĊ PXVLV] QDGDü ZDUWRĞFL ]PLHQQ\P QD QRZR
=DFKRZDQLH ]PLHQQ\FK ORNDOQ\FK PRĪQD ]PLHQLü WDN E\ SU]\ NDĪG\P ZHMĞFLX Z IXQNFMĊ E\áD WR WD VDPD ]PLHQQD L ]DFKRZ\ZDáD VZRMą
RVWDWQLą ZDUWRĞü %DUG]R U]DGNR VLĊ WR MHGQDN VWRVXMH L MDNR SRF]ąWNXMąF\ SURJUDPLVWD QLH SRZLQLHQHĞ W\FK WHFKQLN XĪ\ZDü QDMSLHUZ
PXVLV] ERZLHP GREU]H ]UR]XPLHü SRGVWDZ\ E\ PyF HIHNW\ZQLH SURJUDPRZDü
.RPXQLNRZDQLHVLĊ PLĊG]\ IXQNFMDPL
6NRUR MXĪ ZLHP\ ĪH ]PLHQQH IXQNFML Vą RG VLHELH FDáNRZLFLH RGL]RORZDQH IDMQLH E\ E\áR JG\E\ PLPR ZV]\VWNR IXQNFMH PRJá\ VLĊ ]H VREą
MDNRĞ Z\PLHQLDü VLĊ LQIRUPDFMDPL 3LHUZV]ą PHWRGą Vą ]PLHQQH JOREDOQH ]áR Z F]\VWHM SRVWDFL ]D WR SRZLQQL SDOLü QD VWRVLH
SRF]ąWNXMąF\FK SURJUDPLVWyZ .LHG\Ğ QLHVWHW\ EĊGĊ PXVLDá QDSLVDü FR WR MHVW MHGQDN SUĊGNR WR QLH QDVWąSL ZLĊF PDP QDG]LHMĊ ĪH
]GąĪ\V] VLĊ QDXF]\ü SURJUDPRZDü SRSUDZQLH GR WHJR F]DVX
=ZUDFDQLHZDUWRĞFLSU]H] IXQNFMĊ
'UXJą PHWRGą MDN MXĪ VLĊ GRP\ĞODV] MHVW ]ZUDFDQLH ZDUWRĞFL SU]H] IXQNFMĊ 3U]\NáDGHP WDNLHM IXQNFML E\áD QS IXQNFMD
ª
&
UDQG
)XQNFMD
WD SHáQLáD UROĊ F]DUQHM VNU]\QNL Z MDNLĞ FXGRZQ\ VSRVyE Z\OLF]\áD ZDUWRĞü ORVRZą D QDVWĊSQLH ]ZUyFLáD QDP Z\QLN NWyU\ PRJOLĞP\
SyĨQLHM GRZROQLH SU]HWZDU]Dü -DN ]HUNQLHV] QD EXGRZĊ IXQNFML NWyUD ]RVWDáD Z\ĪHM RSLVDQD ]REDF]\V] ĪH QD VDP\P SRF]ąWNX ]QDMGXMH
VLĊ Z ]DSLVLH VWZLHUG]HQLH ɏ
ɏ
,QQ\PL VáRZ\ ]D WHQ ]DSLV SRGVWDZLDV] W\S GDQ\FK MDNL PD ]ZUyFLü IXQNFMD 1D
FKZLOĊ REHFQą QLHFK WR EĊG]LH OLF]ED ]PLHQQRSU]HFLQNRZD 3U]\NáDG
C/C++
float
dodawanie_inne
()
{
float
a
;
std
::
cin
>>
a
;
float
b
;
std
::
cin
>>
b
;
return
a
+
b
;
}
: SRZ\ĪV]HM IXQNFML Z\VWĊSXMH UyZQLHĪ VáRZR NOXF]RZH 6áRZHP NOXF]RZ\P XVWDZLDP\ ZDUWRĞü MDND PD ]RVWDü
]ZUyFRQD SU]H] IXQNFMĊ 0\ĞOĊ ĪH QLF]HJR WUXGQHJR WXWDM QLH PD ZLĊF PRĪHP\ VLĊ WHUD] VNXSLü QD W\P Z MDNL VSRVyE RGF]\W\ZDü
]ZUDFDQH ZDUWRĞFL
2GF]\W\ZDQLHZDUWRĞFL]ZUDFDQHMSU]H] IXQNFMĊ
Strona 4
[lekcja] Funkcje - pierwsze starcie | Kurs C++ » Poziom 2
2011-11-12 17:06:50
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-pierwsze-starcie/291
)XQNFMD ]ZUDFD ZDUWRĞü F]\OL SRQLĪV]H ]DSLV\ SU]HNDĪą QDP ZDUWRĞü GR WHJR FR EĊG]LH Z\VWĊSRZDáR SR OHZHM VWURQLH IXQNFML
áRSDWRORJLF]QH Z\WáXPDF]HQLH DOH FR WDP
C/C++
float
wynik
=
dodawanie_inne
()
;
wynik
=
dodawanie_inne
()
;
std
::
cout
<<
dodawanie_inne
()
;
dodawanie_inne
()
;
: RVWDWQLP SU]\SDGNX SR OHZHM VWURQLH IXQNFML QLH PD QLF R]QDF]D WR W\OH ĪH IXQNFMD VLĊ Z\NRQD L ]ZUyFL ZDUWRĞü DOH QLH ]RVWDQLH RQD
QLJG]LH ]DSLVDQD : NRQVHNZHQFML Z\QLN REOLF]HĔ SU]HSDGQLH F]\ WR EĊG]LH SRĪąGDQH" 7R ]DOHĪ\ RG WHJR FR IXQNFMD EĊG]LH URELáD -HĪHOL
IXQNFMD ]DáyĪP\ ]ZUDFD LQIRUPDFMĊ R W\P F]\ IXQNFMD VLĊ SRZLRGáD F]\ QLH D 7\ QLHVSHFMDOQLH VLĊ W\P SU]HMPXMHV] ]DNáDGDMąF ĪH ]DZV]H
]DG]LDáD WR L ]ZURW IXQNFML QD QLF &L QLH EĊG]LH SRWU]HEQ\ 'REU\ SURJUDPLVWD MHGQDN RGQRVL VLĊ ] V]DFXQNLHP GR LQIRUPDFML ]ZUDFDQ\FK
SU]H] IXQNFMH L ]DVWDQRZL VLĊ FKRFLDĪ F]\ SU]\SDGNLHP QLH SRZLQLHQ RQ RSURJUDPRZDü V\WXDFML Z\MąWNRZ\FK WDNLFK MDN QS EáąG G]LDáDQLD
IXQNFML :\ZRG\ Z\ZRGDPL QR DOH ZUyüP\ GR QDXNL 0DP\ WHUD] QDVWĊSXMąF\ NRG
C/C++
#include <iostream>
float
dodawanie_inne
()
{
float
a
;
std
::
cin
>>
a
;
float
b
;
std
::
cin
>>
b
;
return
a
+
b
;
}
int
main
()
{
std
::
cout
<<
"Wprowadz dwie liczby: "
;
float
tu_bedzie_wynik
=
dodawanie_inne
()
;
std
::
cout
<<
"Wynik dodawania wynosi: "
<<
tu_bedzie_wynik
<<
std
::
endl
;
return
0
;
}
-HĪHOL SU]HDQDOL]XMHV] GREU]H SRZ\ĪV]\ NRG WR ]DXZDĪ\V] ĪH X]\VNDOLĞP\ WHUD] NRPXQLNDFMĊ MHGQRVWURQQą PLĊG]\ IXQNFMDPL )XQNFMD
RWU]\PXMH LQIRUPDFMH ]ZURWQą RG IXQNFML ɏ ,QIRUPDFMD NWyUD ]RVWDáD ]ZUyFRQD ]RVWDáD SU]\JRWRZDQD SU]H] IXQNFMĊ
ɏ
L PyZLąF SRWRF]QLH Z\VWDZLRQD GR RGF]\WDQLD =DXZDĪP\ MHGQDN ĪH QDGDO QLH PRĪHP\ NRPXQLNRZDü VLĊ Z GUXJą
VWURQĊ WM SU]HND]\ZDü LQIRUPDFML ] IXQNFML GR IXQNFML ɏ = SRPRFą SU]\MGą WXWDM DUJXPHQW\ IXQNFML NWyUH MHV]F]H
QLH ]RVWDá\ RPyZLRQH
3U]HND]\ZDQLHZDUWRĞFLGR IXQNFML SRSU]H]DUJXPHQW\
7U]HFLą WHFKQLNą NRPXQLNDFML PLĊG]\ IXQNFMDPL MHVW ]DVWRVRZDQLH DUJXPHQWyZ IXQNFML $UJXPHQW\ XPRĪOLZLDMą NRPXQLNDFMĊ Z GZLH
VWURQ\ MHGQDN Z W\P UR]G]LDOH ]DMPLHP\ VLĊ W\ONR L Z\áąF]QLH NRPXQLNDFMą Z MHGQą VWURQĊ WM SU]HND]\ZDQLX GDQ\FK GR IXQNFML
'ODF]HJR" %R WDN 1DMOHSV]\P X]DVDGQLHQLHP NWyUH SRZLQQR GR &LHELH WUDILü MHVW IDNW ĪH ZLHOH SRF]ąWNXMąF\FK RVyE WRWDOQLH QLH
UR]XPLH FR WR MHVW DUJXPHQW MDN G]LDáD L MDNLH PDMą ]QDF]HQLH SRV]F]HJyOQH ]QDF]NL 'ODWHJR WHĪ ]DF]QLHP\ RG SRGVWDZ NWyUH WU]HED
RSDQRZDü E\ ZLHG]LHü SyĨQLHM SR FR VLĊ UREL UyĪQH LQQH FXGD R NWyU\FK ] SHZQRĞFLą EĊGĊ SLVDá Z GDOV]HM F]ĊĞFL NXUVX
3RZUyüP\ WHUD] QD FKZLOĊ GR WHRULL NWyUD ]RVWDáD SU]HGVWDZLRQD QD VDP\P SRF]ąWNX QLQLHMV]HJR UR]G]LDáX
C/C++
typ_zwracanej_wartosci nazwa_funkcji
(
typ_argumentu_1 nazwa_argumentu_1
/*,...*/
,
typ_argumentu_n nazwa_argumentu_n
)
{
return
zwracana_wartosc
;
}
-HG\Q\P ]DJDGQLHQLHP NWyUH QLH ]RVWDáR RPyZLRQH GR WHM SRU\ Vą ]DSLV\ Z\VWĊSXMąFH SRPLĊG]\ QDZLDVDPL ]DRNUąJORQ\PL 7R FR
]QDMGXMH VLĊ PLĊG]\ QLPL QD]\ZDP\ DUJXPHQWDPL .DĪG\ DUJXPHQW PXVL PLHü RNUHĞORQ\ VZyM W\S 'RGDWNRZR SR QD]ZLH W\SX SRGDMH VLĊ
UyZQLHĪ QD]ZĊ ]PLHQQHM SR WR E\ PRĪQD E\áR VLĊ GRVWDü GR DUJXPHQWX QDV]HM IXQNFML .ROHMQH DUJXPHQW\ IXQNFML URG]LHOD VLĊ
SU]HFLQNDPL =REDF]P\ WHUD] NROHMQą IXQNFMĊ NWyUD EĊG]LH Z\NRQ\ZDáD RSHUDFMĊ GRGDZDQLD
C/C++
int
dodawanie
(
int
a
,
int
b
)
{
return
a
+
b
;
}
:\ZRáDQLH WHM IXQNFML QDWRPLDVW EĊG]LH Z\JOąGDáR WDN
C/C++
int
iWynik
=
dodawanie
(
123
,
456
)
;
std
::
cout
<<
"Wynik dodawania wynosi: "
<<
iWynik
<<
std
::
endl
;
Strona 5
[lekcja] Funkcje - pierwsze starcie | Kurs C++ » Poziom 2
2011-11-12 17:06:50
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-pierwsze-starcie/291
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
3RZ\ĪV]H ]DSLV\ VSRZRGXMą ĪH
3LHUZV]\ DUJXPHQW IXQNFML DUJXPHQW RWU]\PD ZDUWRĞü
'UXJL DUJXPHQW IXQNFML DUJXPHQW RWU]\PD ZDUWRĞü
:\QLN IXQNFML ſżżżƀ ]RVWDQLH ]ZUyFRQ\ GR ]PLHQQHM
:DUWRĞü ]QDMGXMąFD VLĊ Z ]PLHQQHM ]RVWDQLH Z\SLVDQD QD HNUDQ
&KRü WURFKĊ ĞPLHV]QLH Z\JOąGD IXQNFMD NWyUD Z\NRQXMH WDN SURVWą RSHUDFMĊ WR PLPR ZV]\VWNR SRND]XMH RQD Z MDNL VSRVyE DUJXPHQW\
IXQNFML G]LDáDMą L MDN XVWDZLDü LP ZDUWRĞFL
=DGDQLH GRPRZH
1DSLV] IXQNFMĊ NWyUD EĊG]LH ZF]\W\ZDáD OLF]E\ ]H VWDQGDUGRZHJR ZHMĞFLD L ]ZUDFDáD ZF]\WDQą ZDUWRĞü )XQNFMD PD ]DJZDUDQWRZDü
ĪH ]ZUDFDQD OLF]ED ]DZV]H MHVW SRSUDZQD 2]QDF]D WR ĪH IXQNFMD EĊG]LH PXVLDáD S\WDü XĪ\WNRZQLND R ZSURZDG]HQLH OLF]E\ GRSyNL QLH
SRGD SRSUDZQHM
C/C++
#include <iostream>
int
wczytajLiczbe
()
{
//TODO: tu Twój kod
}
int
main
()
{
std
::
cout
<<
"Podaj liczbe: "
;
int
liczba
=
wczytajLiczbe
()
;
std
::
cout
<<
"Podales liczbe: "
<<
liczba
<<
std
::
endl
;
return
0
;
}
=PRG\ILNXM NDONXODWRU NWyU\ SLVDáHĞ Z MHGQ\P ]H ZF]HĞQLHMV]\FK UR]G]LDáyZ WDN DE\ NRU]\VWDá RQ ]H ZF]HĞQLHM QDSLVDQHM IXQNFML
1DSLV] IXQNFMĊ NWyUD ORVXMH OLF]EĊ ] SU]HG]LDáX RG GR ZáąF]QLH :\ZRáDM IXQNFMĊ NLOND UD]\ Z\SLV] Z\ORVRZDQH ZDUWRĞFL QD
HNUDQ Z FHOX SU]HWHVWRZDQLD F]\ G]LDáD RQD SRSUDZQLH
1DSLV] IXQNFMĊ NWyUD ORVXMH OLF]EĊ ] SU]HG]LDáX NWyU\ ]RVWDQLH SRGDQ\ SRSU]H] DUJXPHQW\ IXQNFML 3U]HWHVWXM IXQNFMĊ Z SRQLĪV]\
VSRVyE
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
//... tu Twój kod
int
main
()
{
srand
(
time
(
NULL
) )
;
int
start
;
std
::
cin
>>
start
;
int
stop
;
std
::
cin
>>
stop
;
int
ile
=
20
;
do
{
std
::
cout
<<
wylosuj
(
start
,
stop
) <<
std
::
endl
;
ile
--
;
}
while
(
ile
>
0
)
;
return
0
;
}
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] Tablice jednowymiarowe | Kurs C++ » Poziom 2
2011-11-12 17:09:27
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Tablice-jednowymiarowe/292
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
7DEOLFH MHGQRZ\PLDURZH
>OHNFMD@
5R]G]LDá -HGQRZ\PLDURZHWDEOLFH ]PLHQQ\FK
,P GDOHM Z ODV W\P ZLĊFHM GU]HZ SU]\QDMPQLHM WDN MHVW Z WHRULL : QLQLHMV]\P UR]G]LDOH ]DSR]QDP\ VLĊ ] WDEOLFDPL ]PLHQQ\FK =DQLP
MHGQDN SU]HMG]LHP\ GR ZáDĞFLZHM QDXNL SRVWDUDP VLĊ SU]\WRF]\ü FK\ED VHQVRZQą RSRZLHĞü SR NWyUHM VDP ] VLHELH EĊG]LHV] PyJá
SRZLHG]LHü R WDEOLFH Vą IDMQH
'ODF]HJR ZSURZDG]RQRWDEOLFH ]PLHQQ\FK
:\REUDĨ VRELH ĪH MHVWHĞ SLORWHP GXĪHJR VDPRORWX 1D SRNáDG ZFKRG]ą SDVDĪHURZH L ] QLHJR Z\FKRG]ą 3U]\V]HGá MHGQDN G]LHĔ ĪH
]DF]ĊáR &LHELH LQWHUHVRZDü NWR QD MDNLP PLHMVFX VLHG]L L SRQXPHURZDáHĞ VRELH PLHMVFD RG GR 1D NDĪG\P PLHMVFX VLHG]L MDNDĞ
RVRED NWyUD PD VZRMH LPLĊ L QD]ZLVNR D ]DWHP UyZQLHĪ L 3(6(/ *G\E\Ğ FKFLDá WHUD] ZH ZáDVQ\P SURJUDPLH XWZRU]\ü PLHMVF GR
SU]HFKRZ\ZDQLD QS SHVHOX 0XVLDáE\Ğ XWZRU]\ü ]PLHQQ\FK L Z\JOąGDáRE\ WR PQLHM ZLĊFHM WDN
C/C++
int
miejsce1_pesel
;
int
miejsce2_pesel
;
int
miejsce3_pesel
;
//...
int
miejsce199_pesel
;
int
miejsce200_pesel
;
7DNLH NOHSDQLH NRGX ] SHZQRĞFLą E\áRE\ PĊF]ąFH $ FR WHUD] MHĪHOL ]HFKFHV] MHV]F]H SU]HFKRZ\ZDü LPLĊ L QD]ZLVNR" .ROHMQH OLQLMHN
SLVDQLD E\ XWZRU]\ü ]PLHQQH" 7DN E\ E\áR JG\E\ QLH LVWQLDá\ WDEOLFH ]PLHQQ\FK 7DEOLFH ]PLHQQ\FK MHGQDN LVWQLHMą L ]DPLDVW WZRU]\ü
NDĪGą ]PLHQQą RVREQR WR PRĪQD RNUHĞOLü LOH PD E\ü ]PLHQQ\FK GDQHJR W\SX
C/C++
int
miejsce_pesel
[
200
]
;
-HGQRZ\PLDURZHWDEOLFH ]PLHQQ\FK
7ZRU]HQLH MHGQRZ\PLDURZ\FK WDEOLF ]PLHQQ\FK MHVW EDUG]R SURVWH Z\VWDUF]\ ĪH ]D GHNODUDFMą ]Z\NáHM ]PLHQQHM SRGDP\ OLF]EĊ
HOHPHQWyZ : RJyOQ\P SU]\SDGNX Z\JOąGD WR WDN
C/C++
typ_zmiennej nazwa_zmiennej
[
liczba_elementow
]
;
-DN NRU]\VWDü ]H ]PLHQQ\FKWDEOLFRZ\FK"
*G\ PLHOLĞP\ ]PLHQQą ]Z\Náą QS
int
liczba
;
WR GRVWĊS GR QLHM X]\VNLZDOLĞP\ ]DSLVHP
liczba
7HUD] JG\ SRVLDGDP\ WDEOLFĊ QS
int
liczby
[
100
]
;
WR GRVWĊS GR SRV]F]HJyOQ\FK HOHPHQWyZ X]\VNXMHP\ SRSU]H] ]DSLV
liczby
[
numer_indeksu
]
JG]LH QXPHUB
LQGHNVX WR OLF]ED ] SU]HG]LDáX RG GR
3LHUZV]\ HOHPHQW WDEOLF\ Z MĊ]\NDFK & L & ]DF]\QD VLĊ ]DZV]H RG LQGHNVX QDWRPLDVW RVWDWQL HOHPHQW SRVLDGD LQGHNV ɏ
Şɨ
FR áąF]QLH GDMH QDP HOHPHQWyZ JG\ ]PLHQQD ɏ Z\QRVL
=REDF]P\ WHUD] MDN WR EĊG]LH Z\JOąGDáR Z SUDNW\FH
C/C++
#include <iostream>
int
main
()
{
int
liczby
[
3
]
;
std
::
cout
<<
"Podaj liczbe 1:"
;
std
::
cin
>>
liczby
[
0
]
;
std
::
cout
<<
"Podaj liczbe 2:"
;
std
::
cin
>>
liczby
[
1
]
;
liczby
[
2
] =
567
;
std
::
cout
<<
"liczby[2] wynosi "
<<
liczby
[
2
] <<
std
::
endl
;
int
suma
=
liczby
[
0
] +
liczby
[
1
] +
liczby
[
2
]
;
std
::
cout
<<
"Suma trzech liczb wynosi:"
<<
suma
<<
std
::
endl
;
Strona 2
[lekcja] Tablice jednowymiarowe | Kurs C++ » Poziom 2
2011-11-12 17:09:27
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Tablice-jednowymiarowe/292
return
0
;
}
3RZ\ĪV]\ SURJUDP GHPRQVWUXMH
MDN ZF]\WDü ZDUWRĞü GR Z\EUDQHJR HOHPHQWX WDEOLF\
MDN SU]\SLVDü ZDUWRĞü Z\EUDQHPX HOHPHQWRZL WDEOLF\
MDN Z\SLVDü ZDUWRĞü Z\EUDQHJR HOHPWQX WDEOLF\
MDN Z\NRQ\ZDü RSHUDFMH QD HOHPHQWDFK WDEOLF\
-HĪHOL SU]HDQDOL]RZDáHĞ NRG XZDĪQLH WR ]DSHZQH ]DXZDĪ\áHĞ ĪH NRU]\VWDQLH ]H ]PLHQQ\FK WDEOLFRZ\FK SUDNW\F]QLH QLF]\P VLĊ QLH UyĪQL
RG ]Z\Ná\FK ]PLHQQ\FK SR]D W\P ĪH QDOHĪ\ SRGDü Z QDZLDVDFK NZDGUDWRZ\FK LQGHNV HOHPHQWX ] NWyU\P FKFHP\ SUDFRZDü
7DEOLFH ]PLHQQ\FK D SĊWOH
=DVWRVRZDQLH WDEOLF ]PLHQQ\FK GDMH QDP QLH W\ONR NRU]\Ğü Z SRVWDFL NUyWV]HJR NRGX NWyU\ WZRU]\ RNUHĞORQą OLF]EĊ ]PLHQQ\FK DOH
UyZQLHĪ GDMH QDP PRĪOLZRĞü ZLHORNURWQHJR SU]HWZDU]DQLD GDQ\FK GOD UyĪQ\FK ]PLHQQ\FK W\P VDP\P NRGHP &R WR R]QDF]D" 2]QDF]D
WR ĪH MHĪHOL VWDQLHV] WHUD] SU]HG V\WXDFMą Z NWyUHM EĊG]LHV] FKFLDá ZF]\WDü ]DáyĪP\ OLF]E GR WDEOLF\ ]PLHQQ\FK WR QLH EĊG]LHV] PXVLDá
WHJR URELü WDN
C/C++
int
liczba
[
10
]
;
std
::
cin
>>
liczba
[
0
]
;
std
::
cin
>>
liczba
[
1
]
;
std
::
cin
>>
liczba
[
2
]
;
std
::
cin
>>
liczba
[
3
]
;
std
::
cin
>>
liczba
[
4
]
;
std
::
cin
>>
liczba
[
5
]
;
std
::
cin
>>
liczba
[
6
]
;
std
::
cin
>>
liczba
[
7
]
;
std
::
cin
>>
liczba
[
8
]
;
std
::
cin
>>
liczba
[
9
]
;
6NRUR LQGHNVHP MHVW OLF]ED WR UyZQLH GREU]H PRĪH E\ü WR ]PLHQQD OLF]ERZD D VNRUR WDN WR QLF QLH VWRL QD SU]HV]NRG]LH E\ ZF]\W\ZDQLH
OLF]E ]URELü QS WDN
C/C++
int
liczba
[
10
]
;
int
licznik
=
0
;
do
{
std
::
cin
>>
liczba
[
licznik
]
;
licznik
++
;
}
while
(
licznik
<
10
)
;
.RPSOHWQ\ SURJUDP GHPRQVWUXMąF\ SRáąF]HQLH WDEOLF L SĊWOL PRĪH ZLĊF Z\JOąGDü WDN
C/C++
#include <iostream>
int
main
()
{
int
liczba
[
10
]
;
int
licznik
=
0
;
do
{
std
::
cin
>>
liczba
[
licznik
]
;
licznik
++
;
}
while
(
licznik
<
10
)
;
std
::
cout
<<
"Podales nastepujace liczby: "
;
licznik
=
0
;
do
{
std
::
cout
<<
liczba
[
licznik
] <<
", "
;
licznik
++
;
}
while
(
licznik
<
10
)
;
return
0
;
}
7DEOLFH D VWDELOQRĞü DSOLNDFML
1DMF]ĊVWV]\P EáĊGHP MDNL MHVW SRSHáQLDQ\ SU]H] SRF]ąWNXMąFK SURJUDPLVWyZ MDN UyZQLHĪ L W\FK EDUG]LHM GRĞZLDGF]RQ\FK MHVW
Z\FKRG]HQLH SR]D ]DNUHV WDEOLF\ 3U]\NáDGRZR
C/C++
Strona 3
[lekcja] Tablice jednowymiarowe | Kurs C++ » Poziom 2
2011-11-12 17:09:27
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Tablice-jednowymiarowe/292
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
int
tablica
[
10
]
;
tablica
[
10
] =
123
;
//Element o indeksie 10 jest 11 elementem tablicy - piszesz poza tablicą!
3LV]ąF SR]D WDEOLFą PRG\ILNXMHV] ZDUWRĞFL LQQ\FK ]PLHQQ\FK OXE NRGX PDV]\QRZHJR DSOLNDFML Z HIHNFLH XV]NDG]DV] NRG VZRMHJR
SURJUDPX FR SURZDG]L GR EáĊGX NU\W\F]QHJR DSOLNDFML :\FKRG]ąF SR]D ]DNUHV WDEOLF\ PRĪH VLĊ ]GDU]\ü UyZQLHĪ ĪH SRGHMPLHV] SUyEĊ
SLVDQLD SR SDPLĊFL LQQHM DSOLNDFML QD FR ZVSyáF]HVQH V\VWHP\ RSHUDF\MQH QLH SR]ZDODMą 6\VWHP RSHUDF\MQ\ RFKURQL 7ZyM NRPSXWHU SU]HG
WDNą HZHQWXDOQRĞFLą L Z\U]XFL EáąG NU\W\F]Q\ 7ZRMHM DSOLNDFML ]DSRELHJDMąF MHGQRF]HĞQLH PRĪOLZRĞFL PRG\ILNDFML ]DVREyZ NWyUH GR
&LHELH QLH QDOHĪDá\
8ZDJD
:\FKRG]ąF SR]D ]DNUHV WDEOLF\ QDUDĪDV] VLĊ QD EáąG NU\W\F]Q\ DSOLNDFML 3DPLĊWDM ZLĊF DE\ ]ZUDFDü V]F]HJyOQą XZDJĊ QD LQGHNV\
MDNLH XVWDZLDV] RGZRáXMąF VLĊ GR HOHPHQWX WDEOLF\
=DGDQLH GRPRZH
1DSLV] SURJUDP NWyU\ Z\ORVXMH OLF]E FDáNRZLW\FK ] ]DNUHVX RG GR ZáąF]QLH Z\SLV]H WH ZDUWRĞFL QD HNUDQ SR F]\P ]VXPXMH MH
L Z\QLN Z\SLV]H QD HNUDQ 3URJUDP PD Z\NRU]\VW\ZDü WDEOLFĊ NWyUD ]RVWDQLH QDMSLHUZ Z\SHáQLRQD OLF]EDPL ORVRZ\PL ] RNUHĞORQHJR
SU]HG]LDáX D QDVWĊSQLH Z\QLN ]RVWDQLH REOLF]RQ\ QD SRGVWDZLH ]DZDUWRĞFL FDáHM WDEOLF\
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] Przekazywanie tablic jednowymiarowych do funkcji | Kurs C++ » Poziom 2
2011-11-12 17:10:40
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Przekazywanie-tablic-jednowymiarowych-do-funkcji/324
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
3U]HND]\ZDQLH WDEOLF MHGQRZ\PLDURZ\FK GR IXQNFML
>OHNFMD@
5R]G]LDá 1LQLHMV]\ UR]G]LDá SRND]XMH SRGVWDZRZHWHFKQLNL SU]HND]\ZDQLDWDEOLF MHGQRZ\PLDURZ\FKGR IXQNFML
-HĪHOL VWDUDáHĞ VLĊ LQWHQV\ZQLH ZFLHOLü Z Ī\FLH SODQ SLVDQLD NRGX Z\NRQDQHJR Z RSDUFLX R IXQNFMH WR ] SHZQRĞFLą QDWUDILáHĞ QD F]\QQ\
RSyU NRPSLODWRUD Z FKZLOL JG\ FKFLDáHĞ SU]HND]Dü WDEOLFĊ GR IXQNFML %\ü PRĪH GRV]HGáHĞ GR MHGQHJR ] PRĪOLZ\FK UR]ZLą]DĔ WM VSRVRELH
SU]HND]\ZDQLD WDEOLF\ MDNR DUJXPHQW GR IXQNFML EąGĨ ]QyZ NWRĞ SRGVXQąá &L QLH]E\W WUDILRQ\ SRP\Vá ]H ]PLHQQ\PL JOREDOQ\PL =PLHQQH
JOREDOQH WR ]áR ZFLHORQH NWyUH RF]\ZLĞFLH PD VZRMH X]DVDGQLRQH PLHMVFH Z SU]\URG]LH MHGQDN GRZLHV] VLĊ R QLP ]QDF]QLH SyĨQLHM QD
FKZLOĊ REHFQą QLH PDV] WHJR ]QDü D QDZHW MHĪHOL MXĪ MH ]QDV] WR PDV] FDáNRZLW\ ]DND] LFK XĪ\ZDQLD 'ODF]HJR" ĩHE\Ğ VLĊ QDXF]\á
SURJUDPRZDü D QLH UR]ZLą]\ZDü SUREOHP\ PHWRGą EXWD Z GU]ZLDFK
3U]HND]\ZDQLHWDEOLF\ MHGQRZ\PLDURZHMGR IXQNFML
: & PDP\ GR G\VSR]\FML NLOND IRUP ]DSLVX SU]HND]\ZDQLD WDEOLF GR IXQNFML : QLQLHMV]\P UR]G]LDOH SR]QDP\ WU]\ VSRVRE\ ]DSLVX
RVLąJQLĊFLD QDV]HJR FHOX =DSLV\ NWyUH ]RVWDQą SU]HGVWDZLRQH Vą Z]JOĊGHP VLHELH UyZQRZDĪQH D ZLĊF PRĪQD LFK XĪ\ZDü ]DPLHQQLH
=DSLV\ WH Z\JOąGDMą QDVWĊSXMąFR
C/C++
void
sposob_1
(
int
tablica
[
123
] )
;
void
sposob_2
(
int
tablica
[] )
;
void
sposob_3
(
int
*
tablica
)
;
-HĪHOL Z\ND]DáHĞ VLĊ NUHDW\ZQRĞFLą UR]ZLą]XMąF ]DGDQLH ] SRSU]HGQLHJR UR]G]LDáX WR SUDZGRSRGREQLH Z\VWąSLá Z QLP ]DSLV NWyU\
Z\VWĊSXMH Z IXQNFML ɏɨ WM
int
tablica
[
123
]
JG]LH WR OLF]ED HOHPHQWyZ Z WDEOLF\ = SXQNWX ZLG]HQLD IXQNFML ]QDMRPRĞü
OLF]E\ HOHPHQWyZ GOD WDEOLF MHGQRZ\PLDURZ\FK MHVW ]EĊGQD :VSRPQLDQ\ ]DSLV ]DG]LDáD ZLĊF WDN VDPR MDN ]DSLV
int
tablica
[]
NWyU\
LQIRUPXMH NRPSLODWRU MDN UyZQLHĪ SURJUDPLVWĊ R SU]HND]\ZDQLX WDEOLF\ GR IXQNFML 2VWDWQL ]DSLV QDWRPLDVW PyZL ĪH MHVW WR ZVNDĨQLN QD
]PLHQQą V]F]HJyáyZ QD FKZLOĊ REHFQą QLH PXVLV] ]QDü -HG\QH FR &LHELH SRZLQQR WHUD] LQWHUHVRZDü WR IDNW ĪH ]DSLV WHQ MHVW UyZQLHĪ
UyZQRZDĪQ\ GR ZF]HĞQLHM RPyZLRQ\FK
.RPSLODWRU ZV]\VWNLH RPyZLRQH ]DSLV\ ]LQWHUSUHWXMH MDNR ZVNDĨQLN :VNDĨQLN Z U]HF]\ZLVWRĞFL MHVW OLF]Eą NWyUD ZVND]XMH QD SLHUZV]ą
NRPyUNĊ SDPLĊFL ]DZLHUDMąFą GDQH 1D FKZLOĊ REHFQą V]F]HJyáyZ QLH PXVLV] ]QDü ]RVWDQą RQH RPyZLRQH Z GDOV]HM F]ĊĞFL NXUVX
'DQH WDEOLF\ Z IXQNFMDFK
7DEOLFH SU]HND]\ZDQH GR IXQNFML QLJG\ QLH Vą NRSLRZDQH 2]QDF]D WR ĪH Z IXQNFML PDV] EH]SRĞUHGQL GRVWĊS GR GDQ\FK NWyUH
]QDMGXMą VLĊ Z WDEOLF\ 0RG\ILNDFMD GDQ\FK MHVW JOREDOQD ERZLHP SUDFXMHV] QD RU\JLQDOQ\FK GDQ\FK WDEOLF\ NWyUD ]RVWDáD SU]HND]DQD GR
IXQNFML
3U]\NáDG
=REDF]P\ WHUD] MDN Z\JOąGDü EĊG]LH SU]HND]\ZDQLH WDEOLF\ GR IXQNFML Z SUDNW\FH
C/C++
#include <iostream>
void
wypelnijTablice
(
int
t
[]
,
int
iRozmiar
)
{
std
::
cout
<<
"Podaj "
<<
iRozmiar
<<
" liczb:"
<<
std
::
endl
;
int
i
=
0
;
do
{
std
::
cin
>>
t
[
i
]
;
i
++
;
}
while
(
i
<
iRozmiar
)
;
}
int
main
()
{
int
moja_tablica
[
5
]
;
wypelnijTablice
(
moja_tablica
,
5
)
;
int
i
=
0
;
Strona 2
[lekcja] Przekazywanie tablic jednowymiarowych do funkcji | Kurs C++ » Poziom 2
2011-11-12 17:10:40
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Przekazywanie-tablic-jednowymiarowych-do-funkcji/324
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
do
{
std
::
cout
<<
moja_tablica
[
i
] <<
", "
;
i
++
;
}
while
(
i
<
5
)
;
return
0
;
}
3RZ\ĪV]\ SU]\NáDG SRZLQLHQ E\ü GOD &LHELH MXĪ QD W\OH SURVW\ ĪH HIHNW G]LDáDQLD SRZ\ĪV]HJR SURJUDPX SRZLQLHQ E\ü GOD &LHELH GR
SU]HZLG]HQLD 'DOHM SR]RVWDMH &L W\ONR üZLF]\ü üZLF]\ü L MHV]F]H UD] üZLF]\ü
3DPLĊWDM ĪH ]PLHQQD R QD]ZLH ɏ
QLH MHVW ZLGRF]QD ] SR]LRPX IXQNFML
MDN UyZQLHĪ ]PLHQQD QLH MHVW
ZLGRF]QD ZHZQąWU] IXQNFML 'RVWĊS GR WDEOLF\ ɏ
Z IXQNFML
SRVLDGDV] SRSU]H] ]PLHQQą
3RZLQLHQHĞ WR MXĪ ZLHG]LHü ]H ZF]HĞQLHMV]HJR UR]G]LDáX SRĞZLĊFRQHJR IXQNFMRP
=DGDQLH GRPRZH
1DSLV] SURJUDP NWyU\ Z\ORVXMH OLF]E FDáNRZLW\FK ] ]DNUHVX RG GR ZáąF]QLH Z\SLV]H WH ZDUWRĞFL QD HNUDQ SR F]\P ]VXPXMH MH
L Z\QLN Z\SLV]H QD HNUDQ :V]HONLH RSHUDFMH PDMą ]RVWDü ]UHDOL]RZDQH Z RSDUFLX R IXQNFMH 7DEOLFD PD E\ü ]DGHNODURZDQD Z IXQNFML
2F]HNLZDQH IXQNFMH
:\SHáQLHQLH WDEOLF\ R SRGDQ\P UR]PLDU]H ORVRZ\PL OLF]EDPL ] SU]HG]LDáX SRGDZDQHJR SU]H] DUJXPHQW\ IXQNFML
6XPRZDQLH RNUHĞORQHM LORĞFL OLF]E ]QDMGXMąF\FK VLĊ Z WDEOLF\ L ]ZURW Z\QLNX
:\SLV\ZDQLH ]DZDUWRĞFL WDEOLF\
3U]\NáDGRZD LPSOHPHQWDFMD IXQNFML PDLQ
C/C++
int
main
()
{
int
tablica
[
999
]
;
wylosujLiczby
(
tablica
,
999
,
4
,
10
)
;
wypiszLiczby
(
tablica
,
999
)
;
int
iSuma
=
obliczSume
(
tablica
,
999
)
;
std
::
cout
<<
"Suma liczb wynosi: "
<<
iSuma
<<
std
::
endl
;
return
0
;
}
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPLDXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] Funkcje, a słowo kluczowe return | Kurs C++ » Poziom 2
2011-11-12 17:12:58
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-a-slowo-kluczowe-return/339
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
)XQNFMH D VáRZR NOXF]RZH UHWXUQ
>OHNFMD@
5R]G]LDá -DN G]LDáD VáRZR NOXF]RZH Z IXQNFMDFK L MDNLH Vą SUDNW\F]QH ]DOHW\ ] ZáDĞFLZHJR XĪ\ZDQLD ZVSRPQLDQHJRVáRZD NOXF]RZHJR
)XQNFMH Vą SRWĊĪQH )XQNFMH Vą SU]\MHPQH )XQNFMH Vą SRĪ\WHF]QH )XQNFMH Vą Z\JRGQH 7DN ZáDĞQLH MHVW L GODWHJR SRZLQQLĞP\ VWDUDü
VLĊ SR]QDü MH MDN QDMOHSLHM 7\P UD]HP SU]\MĪ\P\ VLĊ EOLĪHM VáRZX NOXF]RZHPX NWyUH PD VZRMH EDUG]R IDMQH REOLF]H R NWyU\P QLF
QLH ZLHG]LDáHP SU]H] EDUG]R GáXJL F]DV ]DMPRZDQLD VLĊ SURJUDPRZDQLHP Z & &R WR MHVW WDNLHJR" =DUD] VLĊ R W\P GRZLHV]
&R ZLHP\ GR WHM SRU\ R VáRZLH NOXF]RZ\PUHWXUQ"
1D FKZLOĊ REHFQą R VáRZLH NOXF]RZ\P SRZLQLHQHĞ ZLHG]LHü W\OH ĪH PRĪH Z\VWĊSRZDü ZHZQąWU] FLDáD IXQNFML L SRWUDIL RQR
]ZUyFLü ZDUWRĞü NWyUą GD VLĊ RGF]\WDü Z PLHMVFX JG]LH IXQNFMD ]RVWDáD Z\ZRáDQD = W\P VLĊ QLF QLH ]PLHQLD L ]PLHQLDü QLH EĊG]LH
6áRZR NOXF]RZH UHWXUQ QRZH REOLF]H
6NRUR SU]\SRPQLHOLĞP\ VRELH FR ZLHP\ R VáRZLH NOXF]RZ\P UHWXUQ ]REDF]P\ WHUD] FR RQR MHV]F]H SRWUDIL
VáRZR NOXF]RZH UHWXUQ PRĪH Z\VWĊSRZDü ZHZQąWU] IXQNFML ZLĊFHM QLĪ UD]
VáRZR NOXF]RZH UHWXUQ PRĪH Z\VWĊSRZDü Z IXQNFMDFK NWyUH QLH ]ZUDFDMą ZDUWRĞFL
-HGQD IXQNFMD ZLHOH Z\VWąSLHĔUHWXUQ
3LHUZV]ą QRZą VSUDZą NWyUą RPyZLP\ MHVW IXQNFMD Z NWyUHM Z\VWĊSXMH ZLĊFHM QLĪ UD] VáRZR NOXF]RZH 3LV]ąF IXQNFMH NWyUH
]ZUDFDMą ZDUWRĞü F]ĊVWR VLĊ ]GDU]D ĪH QD SHZQ\P HWDSLH SLVDQHJR NRGX ZLHP\ ] JyU\ MDNL PD ]ZUyFLü Z\QLN RSHUDFML D Z ]ZLą]NX ]
W\P FKFLHOLE\ĞP\ Mą SU]HUZDü ]ZUDFDMąF MHGQRF]HĞQLH LQWHUHVXMąF\ QDV Z\QLN 6áRZR NOXF]RZH Z\FKRG]L QDW\FKPLDVWRZR ]
IXQNFML ]ZUDFDMąF MHGQRF]HĞQLH ZDUWRĞü MDND ]RVWDQLH ]D QLP SRGDQD .RG NWyU\ VLĊ ]QDMGRZDá Z GDOV]HM F]ĊĞFL IXQNFML QLH ]RVWDQLH MXĪ
Z\NRQDQ\ ER L QLH PD SR FR VNRUR IXQNFMD REOLF]\áD Z\QLN NWyU\ FKFLHOLĞP\ RWU]\PDü 3U]HMGĨP\ WHUD] GR SU]\NáDGX NWyU\ ]LOXVWUXMH Z
SUDNW\FH WR FR ]RVWDáR Z\ĪHM RSLVDQH
C/C++
bool
czyGodzinaPoprawna
(
int
godz
,
int
min
,
int
sek
)
{
std
::
cout
<<
"Jestem w funkcji czyGodzinaPoprawna"
<<
std
::
endl
;
if
(
godz
<
0
||
godz
>
23
)
return false
;
std
::
cout
<<
"Godzina jest poprawna"
<<
std
::
endl
;
if
(
min
<
0
||
min
>
59
)
return false
;
std
::
cout
<<
"Godziny i minuty sa poprawne"
<<
std
::
endl
;
if
(
sek
<
0
||
sek
>
59
)
return false
;
std
::
cout
<<
"Czas jest poprawny"
<<
std
::
endl
;
return true
;
}
)XQNFMD Z\SLVXMH NRPXQLNDW\ SR WR E\Ğ PLDá OHSLHM ]REUD]RZDQ\ WHPDW NWyU\ WHUD] SR]QDMHV] Z SUDNW\FH Vą RQH ]EĊGQH L QLH
SRZLQQR LFK WDP E\ü
-DN ZLGDü PDP\ IXQNFMĊ NWyUD VSUDZG]D F]\ F]DV SRGDQ\ SRSU]H] DUJXPHQW\ IXQNFML MHVW SRSUDZQ\ -HĪHOL F]DV MHVW SRSUDZQ\ WR IXQNFMD
SRZLQQD ]ZUyFLü QDP SUDZGĊ F]\OL : SU]HFLZQ\P Z\SDGNX PD ]ZUyFLü IDáV] WM
3U]\NáDGRZH Z\ZRáDQLD L LFK Z\QLNL
=REDF]P\ WHUD] FR RWU]\PDP\ QD HNUDQLH Z Z\QLNX Z\ZRáDQLD IXQNFML ] UyĪQ\PL DUJXPHQWDPL
:\ZRáDQLH
czyGodzinaPoprawna
(
24
,
30
,
50
)
;
6WDQGDUGRZH Z\MĞFLH
Jestem w funkcji czyGodzinaPoprawna
:\ZRáDQLH
czyGodzinaPoprawna
(
12
,
88
,
50
)
;
6WDQGDUGRZH Z\MĞFLH
Jestem w funkcji czyGodzinaPoprawna
Godzina jest poprawna
Strona 2
[lekcja] Funkcje, a słowo kluczowe return | Kurs C++ » Poziom 2
2011-11-12 17:12:58
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-a-slowo-kluczowe-return/339
:\ZRáDQLH
czyGodzinaPoprawna
(
1
,
00
,
99
)
;
6WDQGDUGRZH Z\MĞFLH
Jestem w funkcji czyGodzinaPoprawna
Godzina jest poprawna
Godziny i minuty sa poprawne
:\ZRáDQLH
czyGodzinaPoprawna
(
7
,
33
,
01
)
;
6WDQGDUGRZH Z\MĞFLH
Jestem w funkcji czyGodzinaPoprawna
Godzina jest poprawna
Godziny i minuty sa poprawne
Czas jest poprawny
3UDNW\F]Q\ SU]\NáDG
=REDF]P\ WHUD] MDN PRĪQD Z SUDNW\FH Z\NRU]\VWDü IXQNFMĊ NWyUD ]RVWDáD ]DSUH]HQWRZDQD SRZ\ĪHM IXQNFMD ]RVWDáD RNURMRQD ]
NRPXQLNDWyZ NWyUH Z\SLV\ZDáD
C/C++
#include <iostream>
bool
czyGodzinaPoprawna
(
int
godz
,
int
min
,
int
sek
)
{
if
(
godz
<
0
||
godz
>
23
)
return false
;
if
(
min
<
0
||
min
>
59
)
return false
;
if
(
sek
<
0
||
sek
>
59
)
return false
;
return true
;
}
void
komunikatCzasu
(
bool
bWynik
)
{
if
(
bWynik
)
std
::
cout
<<
"Czas jest poprawny"
<<
std
::
endl
;
else
std
::
cout
<<
"Czas jest niepoprawny"
<<
std
::
endl
;
}
int
main
()
{
komunikatCzasu
(
czyGodzinaPoprawna
(
24
,
30
,
50
) )
;
komunikatCzasu
(
czyGodzinaPoprawna
(
12
,
88
,
50
) )
;
komunikatCzasu
(
czyGodzinaPoprawna
(
1
,
00
,
99
) )
;
komunikatCzasu
(
czyGodzinaPoprawna
(
7
,
33
,
01
) )
;
return
0
;
}
6WDQGDUGRZH Z\MĞFLH SURJUDPX
Czas jest niepoprawny
Czas jest niepoprawny
Czas jest niepoprawny
Czas jest poprawny
6áRZR NOXF]RZH UHWXUQ Z IXQNFMDFKQLH]ZUDFDMąF\FKZDUWRĞFL
6NRUR MXĪ ZLHP\ FR SRWUDIL VáRZR NOXF]RZH WR ]DMPLMP\ VLĊ MXĪ IRUPDOQRĞFLDPL ]ZLą]DQ\PL ] IXQNFMDPL NWyUH QLH ]ZUDFDMą
ZDUWRĞFL 6áRZR NOXF]RZH PRĪH Z\VWĊSRZDü Z WDNLFK IXQNFMDFK 3HáQL RQR WDNą VDPą UROĊ MDN Z IXQNFMDFK NWyUH ]ZUDFDMą
ZDUWRĞü ] Wą UyĪQLFą ĪH ZDUWRĞFL ĪDGQHM QLH ]ZUDFD 6NRUR IXQNFMD QLH ]ZUDFD ĪDGQHM ZDUWRĞFL WR L ]D VáRZHP NOXF]RZ\P
UyZQLHĪ QLH XPLHV]F]DP\ ĪDGQHM ZDUWRĞFL : SUDNW\FH ZLĊF PRĪH WR Z\JOąGDü WDN
C/C++
#include <iostream>
void
wyswietl
(
int
tablica
[]
,
int
ile
)
{
if
(
ile
<=
0
)
{
std
::
cout
<<
"Tablica jest pusta."
<<
std
::
endl
;
return
;
}
//if
int
i
=
0
;
do
Strona 3
[lekcja] Funkcje, a słowo kluczowe return | Kurs C++ » Poziom 2
2011-11-12 17:12:58
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-a-slowo-kluczowe-return/339
{
std
::
cout
<<
tablica
[
i
] <<
", "
;
i
++
;
}
while
(
i
<
ile
)
;
std
::
cout
<<
std
::
endl
;
}
int
dopisz
(
int
iLiczba
,
int
tablica
[]
,
int
ile
)
{
tablica
[
ile
] =
iLiczba
;
ile
++
;
return
ile
;
//zwraca ile jest elementów po dodaniu nowego
}
int
main
()
{
int
liczbaElementow
=
0
;
int
tablicaLiczb
[
10
]
;
wyswietl
(
tablicaLiczb
,
liczbaElementow
)
;
liczbaElementow
=
dopisz
(
123
,
tablicaLiczb
,
liczbaElementow
)
;
wyswietl
(
tablicaLiczb
,
liczbaElementow
)
;
liczbaElementow
=
dopisz
(
321
,
tablicaLiczb
,
liczbaElementow
)
;
wyswietl
(
tablicaLiczb
,
liczbaElementow
)
;
return
0
;
}
:\MDĞQLHĔ ZLĊFHM P\ĞOĊ ĪH WX QLH SRWU]HED ZLĊF VSUDZĊ XZDĪDP ]D ]DPNQLĊWą 3U]HDQDOL]XM MHGQDN GREU]H SRZ\ĪV]\ SU]\NáDG
]DZLHUD RQ EDUG]R FLHNDZą REVáXJĊ GRGDZDQLD HOHPHQWyZ GR WDEOLF\ NWyUD ] SHZQRĞFLą MHVW GOD &LHELH GREU\P HOHPHQWHP HGXNDF\MQ\P
3UDNW\F]QH]DVWRVRZDQLD
2 LOH ]DVWRVRZDQLH VáRZD NOXF]RZHJR MHVW Z\JRGQH Z V\WXDFMDFK NWyUH ]RVWDá\ RSLVDQH R W\OH MHVW RQR QLH]DVWąSLRQH Z
PRPHQFLH JG\ PDP\ IXQNFMĊ Z NWyUHM PDP\ ]DJQLHĪGĪRQH SĊWOH L ZHZQąWU] QLFK Z SHZQ\P PRPHQFLH VWZLHUG]LP\
2NHM Z\QLN MXĪ
]QDP Z\FKRG]LP\ ] WHM IXQNFML
5RELHQLH ZDUXQNyZ SR WR E\ Z\MĞü ] W\FK ]DJQLHĪGĪRQ\FK SĊWOL WR E\áDE\ GURJD SU]H] PĊNĊ ZLĊF
SUDNW\F]QLH ]DZV]H Z WDNLFK V\WXDFMDFK Z\NRU]\VWXMH VLĊ RPyZLRQą ZáDVQRĞü VáRZD NOXF]RZHJR
=ZUDFDQLHZDUWRĞFL SU]H] IXQNFMĊ
3DPLĊWDM ĪH IXQNFMD NWyUD ]ZUDFD ZDUWRĞü PXVL ]ZUDFDü Mą ]DZV]H -HĪHOL IXQNFMD GRMG]LH GR NRĔFD EORNX IXQNFML L QLH QDSRWND VáRZD
NOXF]RZHJR ]DFKRZDQLH Z\MĞFLD ] IXQNFML MHVW QLH]GHILQLRZDQH 2]QDF]D WR ĪH DSOLNDFMD PRĪH ]DNRĔF]\ü SUDFĊ SRSU]H]
Z\VWąSLHQLH EáĊGX NU\W\F]QHJR DSOLNDFML 1LHNWyUH NRPSLODWRU\ áDJRGQLHM VLĊ Z W\FK V\WXDFMDFK REFKRG]ą L ]ZUDFDMą RQH ZyZF]DV
SU]\SDGNRZą ZDUWRĞü
3U]\NáDG QLHEH]SLHF]QHMIXQNFML
=DáyĪP\ WHUD] ĪH QDSLV]HP\ IXQNFMĊ Z NWyUHM QLH ZV]\VWNLH PRĪOLZH ĞFLHĪNL SU]HMĞFLD EĊGą ]ZUDFDá\ ZDUWRĞü
C/C++
int
funkcja
(
int
liczba
)
{
if
(
liczba
>
10
)
return
0
;
}
3UyED NRPSLODFML VLĊ SRZLHG]LH MHGQDN SRZLQQR SRMDZLü VLĊ RVWU]HĪHQLH R QDVWĊSXMąFHM WUHĞFL
&RGH%ORFNV 0LQ*:
In function 'int funkcja(int)':
warning: control reaches end of non-void function
9LVXDO &
warning C4715: 'funkcja' : not all control paths return a value
2VWU]HĪHQLH WR LQIRUPXMH ĪH IXQNFMD QLH XZ]JOĊGQLD ZV]\VWNLFK PRĪOLZ\FK ĞFLHĪHN SU]HMĞFLD FR Z NRQVHNZHQFML PRĪH GOD SHZQ\FK
GDQ\FK VSRZRGRZDü QLH]GHILQLRZDQH ]DFKRZDQLH NRGX /RJ NRPSLODFML MHVW 7ZRLP SU]\MDFLHOHP L QLH QDOHĪ\ SU]HFKRG]Lü RERN QLHJR
QLJG\ RERMĊWQLH &]\WDM ZLĊF JR L VWDUDM VLĊ SLVDü NRG WDN DE\ ĪDGQH RVWU]HĪHQLD QLH SRMDZLDá\ VLĊ Z ORJX NRPSLODFML
$ FR JG\ QLH GRVWDáHĞ RVWU]HĪHQLDGOD SU]\NáDGRZHJRNRGX"
7DND V\WXDFMD UyZQLHĪ PRĪH VLĊ ]GDU]\ü :yZF]DV QDOHĪ\ ZHMĞü Z RSFMH NRPSLODWRUD L ZáąF]\ü RGSRZLHGQLą RSFMĊ
&RGH%ORFNV
: PHQX Z\EUDü SR]\FMĊ 6HWWLQJV
Strona 4
[lekcja] Funkcje, a słowo kluczowe return | Kurs C++ » Poziom 2
2011-11-12 17:12:58
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-a-slowo-kluczowe-return/339
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
QDVWĊSQLH &RPSLOHU DQG GHEXJJHU
=D]QDF]\ü RSFMĊ (QDEOH DOO FRPSLOHU ZDUQLQJV RYHUULGHV HYHU\ RWKHU VHWWLQJ >:DOO@
=DWZLHUG]Lü SU]\FLVNLHP 2.
9LVXDO &
: SU]\SDGNX 9LVXDO & ]DOHFDP ]ZLĊNV]\ü SR]LRP RVWU]HĪHĔ ] VWRSQLD QD VWRSLHĔ 8Ī\WNRZQLF\ 9LVXDO & SRZLQQL VRELH ] W\P
SRUDG]Lü QLQLHMV]\ NXUV MHVW SRĞZLĊFRQ\ &RGH%ORFNV ZLĊF V]F]HJyá\ ]RVWDQą Z W\P SU]\SDGNX SRPLQLĊWH
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] Losowanie bez powtórze
Ĕ
| Kurs C++ » Poziom 2
2011-11-12 17:13:45
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Losowanie-bez-powtorzen/293
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
/RVRZDQLH EH] SRZWyU]HĔ
>OHNFMD@
5R]G]LDá /RVRZDQLH OLF]E FDáNRZLW\FK EH] SRZWyU]HĔ
.ROHMQ\P ]DJDGQLHQLHP NWyU\P VLĊ ]DMPLHP\ Z QLQLHMV]\P NXUVLH & MHVW ORVRZDQLH OLF]E FDáNRZLW\FK EH] SRZWyU]HĔ &]ĊVWR ]GDU]D
VLĊ ERZLHP ĪH ZáDĞQLH WDNLHM IXQNFMRQDOQRĞFL Z QDV]\P SURJUDPLH SRWU]HEXMHP\ D VNRUR WDN WR ZDUWR Mą RPyZLü L SU]\ RND]ML XWUZDOLü
VRELH PDWHULDá ] SRSU]HGQLFK UR]G]LDáyZ QLQLHMV]HJR NXUVX
6WDQGDUGRZHQDU]ĊG]LD GR ORVRZDQLD OLF]E EH] SRZWyU]HĔ
3LHUZV]ą U]HF]ą R NWyUHM QDOHĪ\ SRZLHG]LHü ]DELHUDMąF VLĊ ]D QLQLHMV]\ WHPDW MHVW IDNW ĪH VWDQGDUGRZ\FK QDU]ĊG]L GR ORVRZDQLD EH]
SRZWyU]HĔ SR SURVWX QLH PD 3RZRGyZ GODF]HJR QLH PD WDNLHM IXQNFML Z ELEOLRWHFH & EąGĨ & PRĪQD ]QDOHĨü FR QDMPQLHM NLOND QS
SURJUDPLVWD ] SU]HFLĊWQą ZLHG]ą R SURJUDPRZDQLX SRZLQLHQ XPLHü VRELH Mą QDSLVDü
ORVRZDQLH PRĪH RGE\ZDü VLĊ ] RNUHĞORQHJR ]ELRUX SU]\SDGNRZ\FK OLF]E EąGĨ ] RNUHĞORQHJR SU]HG]LDáX
SXOD OLF]E SR]RVWDá\FK GR Z\ORVRZDQLD PRĪH E\ü SU]HFKRZ\ZDQD OXE QLH
%\ü PRĪH QLH MHVWHĞ MHV]F]H WHJR ĞZLDGRP DOH ] REHFQą ZLHG]ą SRZLQLHQHĞ E\ü MXĪ Z VWDQLH QDSLVDü SURJUDP ORVXMąF\ OLF]E\ EH]
SRZWyU]HĔ
)RUPXáXMHP\SUREOHP
1D SRF]ąWHN VIRUPXáXMP\ QDV] SUREOHP 3URJUDP PD QDP Z\ORVRZDü OLF]E EH] SRZWyU]HĔ /LF]E\ Z\ORVRZDQH PDMą E\ü ] SU]HG]LDáX
RG GR
$QDOL]D SUREOHPX ORVRZDQLD OLF]E EH] SRZWyU]HĔ
%D]ą Z\MĞFLRZą GOD NDĪGHJR SUREOHPX SURJUDPLVW\F]QHJR SRZLQQD E\ü MHJR DQDOL]D $QDOL]D WD PD SURZDG]Lü GR UR]ELFLD SUREOHPX QD
F]\QQLNL SLHUZV]H WM SRZLQQR QDVWąSLü VIRUPXáRZDQLH OLWHUDOQLH FR SURJUDP NURN SR NURNX PD URELü 6WZLHUG]HQLH SW
/RVRZDQLH OLF]E
EH] SRZWyU]HĔ
GOD SURJUDPLVW\ MHVW W\ONR W\WXáHP RSLVXMąF\P RJyOQLH UR]ZLą]\ZDQ\ SUREOHP 'OD SURJUDPLVW\ ZDĪQH MHVW ]DVWDQRZLHQLH
VLĊ FR VLĊ NU\MH SRG NDĪG\P ]H VáyZ UR]SDWU\ZDQHJR ]DJDGQLHQLD 7DN ZLĊF SU]HMGĨP\ GR DQDOL]\
/RVRZDQLH OLF]E RN ORVXMĊ OLF]EĊ DOH ] F]HJR" = SU]HG]LDáX" =H ]ELRUX GRVWĊSQ\FK OLF]E" =ELyU WHQ VLĊ EĊG]LH ]PQLHMV]Dá F]\ QLH"
EH] SRZWyU]HĔ /LF]E\ VLĊ QLH PDMą SRZWDU]Dü 6NąG NRPSXWHU PD ZLHG]LHü F]\ OLF]ED MXĪ QLH ]RVWDáD ZF]HĞQLHM Z\ORVRZDQD" 2Q
SU]HFLHĪ QLH WHJR QLH SDPLĊWD EĊG]LH SRWU]HEQD WDEOLFD GR SU]HFKRZ\ZDQLD Z\ORVRZDQ\FK Z\QLNyZ
3RZ\ĪV]H SXQNW\ SRND]XMą VHULĊ S\WDĔ NWyUH GRĞZLDGF]RQ\ SURJUDPLVWD ]DGD VRELH SRGFKRG]ąF GR SUREOHPX 7\ VLĊ EĊG]LHV] PXVLDá
WHJR QDXF]\ü L WR MHVW SRGVWDZRZ\ HOHPHQW NWyU\ WZRU]\ SU]HSDĞü PLĊG]\ SURJUDPLVWą NWyU\ ]DF]\QD VZRMą SU]\JRGĊ D W\P NWyU\
UDGRĞQLH VLDGD GR VZRMHJR NRPSXWHUD L VLĊ ]DVWDQDZLD
FR E\ WX G]LVLDM IDMQHJR QDSLVDü
1LH EyM VLĊ HNVSHU\PHQWRZDü QLH EyM VLĊ
P\ĞOHü L QLH EyM VLĊ SRGąĪDü VDPRG]LHOQLH SU]H] QDSRW\NDQH SUREOHP\ NDĪG\ SURJUDPLVWD MHVW VDPRG]LHOQ\ ER PLDá VLOQą ZROĊ E\ VWDQąü
QD ZáDVQH QRJL %ąGĨ ZLĊF DPELWQ\
)RUPXáXMHP\G]LDáDQLHSURJUDPX
6NRUR XVWDOLOLĞP\ VRELH PQLHM ZLĊFHM FR QDV] SURJUDP SRZLQLHQ URELü WR SRXNáDGDMP\ WHUD] WHQ ]OHSHN FKDRW\F]Q\FK P\ĞOL Z MDNLĞ
NRQNUHWQLHMV]\ SODQ G]LDáDQLD
/RVXMĊ OLF]EĊ ] SU]HG]LDáX RG GR
6SUDZG]DP F]\ Z\ORVRZDQD OLF]ED SU]\SDGNLHP ZF]HĞQLHM MXĪ QLH SDGáD
-HĪHOL Z\ORVRZDQD OLF]ED QLH SDGáD ]DSLVXMĊ Mą GR SXOL OLF]E Z\ORVRZDQ\FK L ]ZLĊNV]DP OLF]EĊ Z\ORVRZDQ\FK OLF]E
-HĪHOL Z\ORVRZDQD OLF]ED SDGáD ZUDFDP GR NURNX
6SUDZG]DP F]\ Z\ORVRZDáHP MXĪ OLF]E -HĪHOL QLH SU]HFKRG]Ċ GR SXQNWX
: W\P PRPHQFLH PDP\ RSLVDQ\ MXĪ VáRZDPL SUREOHP 7HUD] NURN SR NURNX X]XSHáQLDP\ QDV] SURJUDP L MHĪHOL MHVW WDND PRĪOLZRĞü
VSUDZG]DP\ SR NDĪG\P NURNX F]\ SURJUDP DE\ QD SHZQR ]DFKRZXMH VLĊ GR GDQHJR PRPHQWX SUDZLGáRZR &]DVDPL QLH MHVW PRĪOLZH
VWRSQLRZH VSUDZG]DQLH SRSUDZQRĞFL G]LDáDQLD SURJUDPX L GRSLHUR SR ]áRĪHQLX ZV]\VWNLFK QDV]\FK P\ĞOL Z FDáRĞü ]DF]\QD SURJUDP
IXQNFMRQRZDü ]JRGQLH ] QDV]\PL ]DáRĪHQLDPL
3URJUDP UR]ZLą]XMąF\]DGDQLH
=DQLP ]DF]QLHV] XZDĪQLH DQDOL]RZDü UR]ZLą]DQLH ]DGDQLD SROHFDP SRGMąü VDPRG]LHOQą ZDONĊ ] SUREOHPHP 3RĞSLHFK Z SURJUDPRZDQLX
MHVW ]DZV]H ]JXEQ\
Strona 2
[lekcja] Losowanie bez powtórze
Ĕ
| Kurs C++ » Poziom 2
2011-11-12 17:13:45
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Losowanie-bez-powtorzen/293
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
bool
czyBylaWylosowana
(
int
iLiczba
,
int
tab
[]
,
int
ile
)
{
if
(
ile
<=
0
)
return false
;
int
i
=
0
;
do
{
if
(
tab
[
i
] ==
iLiczba
)
return true
;
i
++
;
}
while
(
i
<
ile
)
;
return false
;
}
int
wylosuj
()
{
return
(
rand
() %
10
) +
1
;
}
int
main
()
{
srand
(
time
(
0
) )
;
int
wylosowane
[
5
]
;
int
wylosowanych
=
0
;
do
{
int
liczba
=
wylosuj
()
;
if
(
czyBylaWylosowana
(
liczba
,
wylosowane
,
wylosowanych
) ==
false
)
{
wylosowane
[
wylosowanych
] =
liczba
;
wylosowanych
++
;
}
//if
}
while
(
wylosowanych
<
5
)
;
wylosowanych
=
0
;
do
{
std
::
cout
<<
wylosowane
[
wylosowanych
] <<
std
::
endl
;
wylosowanych
++
;
}
while
(
wylosowanych
<
5
)
;
return
0
;
}
=DGDQLH GRPRZH
1DSLV] SURJUDP NWyU\ ZF]\WD OLF]E\ SRGDQH SU]H] XĪ\WNRZQLND GR WDEOLF\ D QDVWĊSQLH Z\ORVXMH ] QLFK EH] SRZWyU]HĔ :\QLN
Z\SLV] QD HNUDQ 3RVWDUDM VLĊ QDSLVDü WHQ SURJUDP Z RSDUFLX R IXQNFMH
8ZDJD
7UHĞü QLQLHMV]HJR UR]G]LDáX QLH ]DZLHUD UR]ZLą]DQLD SUREOHPX OHF] ZVND]yZNL ]DGDQLH Z\PDJD SU]HGH ZV]\VWNLP ]DVWDQRZLHQLD VLĊ L
SU]HSURZDG]HQLD V]F]HJyáRZHM DQDOL]\ SUREOHPX GR NRQNUHWQHJR SU]\SDGNX SU]HGVWDZLRQHJR Z ]DGDQLX =DGDQLH QLH Z\PDJD
ZLĊNV]HM ZLHG]\ ] ]DNUHVX SURJUDPRZDQLD QLĪ WD NWyUD ]RVWDáD SU]HGVWDZLRQD GR WHM SRU\
=PRG\ILNXM SURJUDP ] SLHUZV]HJR ]DGDQLD WDN DE\ XĪ\WNRZQLN PXVLDá SRGDü OLF]E D ] QLFK EĊG]LH ORVRZDQ\FK EH] SRZWyU]HĔ
6SUDZGĨ F]\ Z\QLNL Vą SRSUDZQH
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD
Strona 1
[lekcja] P
Ċ
tla for | Kurs C++ » Poziom 2
2011-11-12 17:15:20
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-for/294
'DUPRZH NXUV\ 2QOLQH
ª
.XUV &
ª
3R]LRP
$XWRU 3LRWU 6]DZG\ĔVNL
3ĊWOD IRU
>OHNFMD@
5R]G]LDá 2PyZLHQLH SĊWOL
for
.ROHMQ\ UR]G]LDá NROHMQH Z\]ZDQLH 7\P UD]HP ]DMPLHP\ VLĊ RPyZLHQLHP SĊWOL
for
3ĊWOH Z SURJUDPRZDQLX Vą QDMSRWĊĪQLHMV]\P
QDU]ĊG]LHP Z UĊNX SURJUDPLVW\ 1D FKZLOĊ REHFQą SRZLQLHQHĞ XPLHü SRVáXJLZDü VLĊ MHGQ\P URG]DMHP SĊWOL RUD] UR]XPLHü LFK ]DVDGĊ
G]LDáDQLD ]QDV] MXĪ ERZLHP SĊWOĊ
do
...
while
NWyUą SRZLQLHQHĞ UR]ZLą]\ZDü ZV]\VWNLH GRW\FKF]DVRZH ]DGDQLD
=D SRPRFą SĊWOL
for
PRĪHP\ Z\NRQ\ZDü GRNáDGQLH WH VDPH U]HF]\ FR ]D SRPRFą ]QDQHM QDP SĊWOL
do
...
while
=QDMRPRĞü G]LDáDQLD
ZV]\VWNLFK SĊWOL XáDWZLD ]QDF]QLH F]\WDQLH NRGX UyĪQLą VLĊ RQH ERZLHP GUREQ\PL GHWDODPL NWyUH VSUDZLDMą ĪH NDĪGD SĊWOD MHVW ]QDF]QLH
Z\JRGQLHMV]D RG SR]RVWDá\FK Z RNUHĞORQ\FK V\WXDFMDFK
6NáDGQLD SĊWOL IRU
6NRUR MXĪ ZLHV] MDND LGHD SU]\ĞZLHFD UyĪQ\P URG]DMRP SĊWOL WR PRĪHP\ WHUD] ]DSR]QDü VLĊ ]H VNáDGQLą SĊWOL IRU
C/C++
for
(
_A_
;
_B_
;
_C_
)
_D_
;
//lub:
for
(
_A_
;
_B_
;
_C_
)
{
//blok instrukcji
}
%XGRZD SĊWOL
for
MDN áDWZR PRĪQD ]DXZDĪ\ü MHVW SRG]LHORQD QD F]WHU\ F]ĊĞFL 6ą WR
QDGDZDQLH SRF]ąWNRZ\FK ZDUWRĞFL ]PLHQQ\P R]QDF]RQD Z\ĪHM MDNR B$B
ZDUXQHN NRĔF]ąF\ SĊWOĊ IRU R]QDF]RQ\ MDNR B%B
]ZLĊNV]HQLH ]PQLHMV]HQLH OLF]QLND SĊWOL B&B
SRZWDU]DQD LQVWUXNFMD B'B EąGĨ EORN LQVWUXNFML
3U]\NáDG XĪ\FLD SĊWOL IRU
6NRUR WHRULĊ MXĪ ]QDP\ WR ]REDF]P\ WHUD] MDN SĊWOH IRU Z\JOąGDMą Z SUDNW\FH
C/C++
int
i
;
for
(
i
=
1
;
i
<=
10
;
i
++ )
{
//Powtarzany blok instrukcji
}
-HĪHOL PDP\ MHGQą LQVWUXNFMĊ GR Z\NRQDQLD Z SĊWOL WR ]DSLV PRĪH Z\JOąGDü QDVWĊSXMąFR
C/C++
int
i
;
for
(
i
=
1
;
i
<=
10
;
i
++ )
jedna_powtarzana_instrukcja
;
-HĪHOL XZDĪQLH SU]HDQDOL]RZDáHĞ SRZ\ĪV]\ NRG RUD] RSLV VNáDGQL SĊWOL
for
WR SRZLQLHQHĞ ZLHG]LHü ĪH SRZWDU]DQD LQVWUXNFMD EąGĨ EORN
LQVWUXNFML Z\NRQD VLĊ UD]\
7\SRZH ]DVWRVRZDQLDSĊWOL IRU
3ĊWOĊ IRU XĪ\ZDP\ SUDNW\F]QLH ]DZV]H JG\ ]QDP\ LORĞü GDQ\FK MDNą PDP\ ZF]\WDü Z\SLVDü OXE ]PLHQLü -HĞOL FKFHP\ SROLF]\ü ĞUHGQLą ]
RNUHĞORQHM OLF]E\ OLF]E ZF]\WDü RNUHĞORQą LORĞü GDQ\FK ] SOLNX OXE Z\SLVDü RNUHĞORQą LORĞü GDQ\FK QD HNUDQ SĊWOD IRU MHVW GR WHJR SR
SURVWX LGHDOQD
,QLFMDOL]DFMD]PLHQQ\FKZ SĊWOL IRU
Strona 2
[lekcja] P
Ċ
tla for | Kurs C++ » Poziom 2
2011-11-12 17:15:20
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-for/294
: MĊ]\NX & Z VHNFML B$B PRĪOLZH MHVW XWZRU]HQLH W\PF]DVRZHM ]PLHQQHM NWyUD EĊG]LH ZLGRF]QD W\ONR L Z\áąF]QLH ZHZQąWU] SĊWOL IRU
:VSRPQLDQD ZáDVQRĞü MHVW EDUG]R Z\JRGQD GOD SURJUDPLVW\ L NRU]\VWDQLH ] QLHM Z & MHVW SUDNW\F]QLH U]HF] ELRUąF QD SRU]ąGNX
G]LHQQ\P : SUDNW\FH NRG NWyU\ ]RVWDá ZF]HĞQLHM ]DSUH]HQWRZDQ\ PRĪQD ]DSLVDü QDVWĊSXMąFR
C/C++
for
(
int
i
=
1
;
i
<=
10
;
i
++ )
{
//Powtarzany blok instrukcji
}
for
(
int
i
=
1
;
i
<=
10
;
i
++ )
jedna_powtarzana_instrukcja
;
3ĊWOD IRU ]DSLVDQD SU]\ SRPRF\ SĊWOL GR ZKLOH
$E\ ]REUD]RZDü UyĪQLFĊ Z GáXJRĞFL NRGX QDSLVDQHJR ]D SRPRFą SĊWOL
for
RUD] SĊWOL
do
...
while
]REDF]P\ MDN EĊG]LH Z\JOąGDá NRG
SĊWOL
for
]DSLVDQ\ ]D SRPRFą SĊWOL
do
...
while
C/C++
_A_
;
if
(
_B_
)
do
{
//powtarzany blok instrukcji (albo jedna instrukcja oznaczona jako _D_)
_C_
;
}
while
(
_B_
)
;
7URFKĊ SUDNW\NL
7HRULD PD WR GR VLHELH ĪH E\ZD WUXGQD MHĪHOL QLH MHVW SRSDUWD SU]\NáDGDPL =REDF]P\ ZLĊF WHUD] NLOND SURVW\FK SU]\NáDGyZ ]DVWRVRZDQLD
SĊWOL
for
:\SLV\ZDQLHWDEOLF\ SĊWOą IRU
C/C++
#include <iostream>
void
wypiszTablice
(
int
tablica
[]
,
int
ile
)
{
for
(
int
indeks
=
0
;
indeks
<
ile
;
indeks
++ )
std
::
cout
<<
tablica
[
indeks
] <<
std
::
endl
;
}
int
main
()
{
int
dane
[
5
]
;
dane
[
0
] =
123
;
dane
[
1
] =
321
;
dane
[
2
] =
333
;
dane
[
3
] =
222
;
dane
[
4
] =
111
;
wypiszTablice
(
dane
,
5
)
;
return
0
;
}
:\SLV\ZDQLHWDEOLF\ SĊWOą GR ZKLOH
C/C++
#include <iostream>
void
wypiszTablice
(
int
tablica
[]
,
int
ile
)
{
int
indeks
=
0
;
if
(
indeks
<
ile
)
do
{
std
::
cout
<<
tablica
[
indeks
] <<
std
::
endl
;
indeks
++
;
}
while
(
indeks
<
ile
)
;
}
int
main
()
{
Strona 3
[lekcja] P
Ċ
tla for | Kurs C++ » Poziom 2
2011-11-12 17:15:20
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-for/294
int
dane
[
5
]
;
dane
[
0
] =
123
;
dane
[
1
] =
321
;
dane
[
2
] =
333
;
dane
[
3
] =
222
;
dane
[
4
] =
111
;
wypiszTablice
(
dane
,
5
)
;
return
0
;
}
:F]\W\ZDQLHOLF]E SĊWOą IRU
C/C++
#include <iostream>
void
wypiszTablice
(
int
tablica
[]
,
int
ile
)
{
for
(
int
indeks
=
0
;
indeks
<
ile
;
indeks
++ )
std
::
cout
<<
tablica
[
indeks
] <<
std
::
endl
;
}
void
wczytajLiczby
(
int
tablica
[]
,
int
ile
)
{
for
(
int
indeks
=
0
;
indeks
<
ile
;
indeks
++ )
{
std
::
cout
<<
"Podaj liczbe "
<<(
indeks
+
1
) <<
": "
;
std
::
cin
>>
tablica
[
indeks
]
;
}
//for
}
int
main
()
{
int
dane
[
5
]
;
wczytajLiczby
(
dane
,
5
)
;
wypiszTablice
(
dane
,
5
)
;
return
0
;
}
6XPRZDQLH OLF]E SĊWOą IRU
C/C++
#include <iostream>
void
wypiszTablice
(
int
tablica
[]
,
int
ile
)
{
for
(
int
indeks
=
0
;
indeks
<
ile
;
indeks
++ )
std
::
cout
<<
tablica
[
indeks
] <<
std
::
endl
;
}
int
sumujLiczby
(
int
tablica
[]
,
int
ile
)
{
int
oblicz
=
0
;
for
(
int
indeks
=
0
;
indeks
<
ile
;
indeks
++ )
oblicz
+=
tablica
[
indeks
]
;
return
oblicz
;
}
int
main
()
{
int
dane
[
5
]
;
dane
[
0
] =
11
;
dane
[
1
] =
5
;
dane
[
2
] =
7
;
dane
[
3
] =
8
;
dane
[
4
] =
2
;
wypiszTablice
(
dane
,
5
)
;
int
wynik
=
sumujLiczby
(
dane
,
5
)
;
std
::
cout
<<
"Suma liczb wynosi = "
<<
wynik
<<
std
::
endl
;
return
0
;
}
=DGDQLH GRPRZH
1DSLV] VXPRZDQLH OLF]E SĊWOą
do
...
while
G]LDáDMąFH WDN VDPR MDN VXPRZDQLH Z\NRQDQH ]D SRPRFą SĊWOL
for
NWyUH ]RVWDáR
SU]HGVWDZLRQH Z QLQLHMV]\P UR]G]LDOH
Strona 4
[lekcja] P
Ċ
tla for | Kurs C++ » Poziom 2
2011-11-12 17:15:20
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Petla-for/294
$UFKLWHNWVHUZLVX 3LRWU 6]DZG\ĔVNL
:V]HONLHSUDZD ]DVWU]HĪRQH
1DSLV] SURJUDP NWyU\ ]D SRPRFą SĊWOL
for
Z\SHáQL HOHPHQWRZą WDEOLFĊ QDVWĊSXMąF\P FLąJLHP OLF]E ^ Q `
=DZDUWRĞü Z\SHáQLRQHM WDEOLF\ Z\SLV] QD HNUDQ
1DSLV] SURJUDP NWyU\ Z\NRQD ZV]\VWNLH SRQLĪV]H NURNL Z SRGDQHM NROHMQRĞFL
/RVXMH OLF]E ] SU]HG]LDáX RG GR ZáąF]QLH L ]DSLVXMH MH GR WDEOLF\
:\SLVXMH Z\ORVRZDQ\FK OLF]E RG SRF]ąWNX GR NRĔFD
:\SLVXMH Z\ORVRZDQ\FK OLF]E RG NRĔFD GR SRF]ąWNX
=QDMGXMH QDMPQLHMV]ą RUD] QDMZLĊNV]ą Z\ORVRZDQą OLF]EĊ
:\SLVXMH QDMPQLHMV]ą L QDMZLĊNV]ą Z\ORVRZDQą OLF]EĊ
3URJUDP QLH PRĪH XĪ\ZDü SĊWOL LQQ\FK QLĪ SĊWOD
for
8ZDJD
:V]\VWNLH SURJUDP\ PDMą Z\NRU]\VW\ZDü IXQNFMH 3U]\NáDGRZR NRG IXQNFML GOD RVWDWQLHJR SURJUDPX SRZLQLHQ Z\JOąGDü
QDVWĊSXMąFR
C/C++
int
main
()
{
int
tablica
[
10
]
;
wylosujLiczby
(
tablica
,
10
)
;
wypiszTablice
(
tablica
,
10
)
;
wypiszTabliceOdTylu
(
tablica
,
10
)
;
int
iMin
=
znajdzMinimum
(
tablica
,
10
)
;
int
iMax
=
znajdzMaksimum
(
tablica
,
10
)
;
wypiszMinMax
(
iMin
,
iMax
)
;
return
0
;
}
3R]RVWDáH SURJUDP\ SRZLQQ\ PLHü ]EXGRZDQą IXQNFMĊ DQDORJLF]QLH GR SRZ\ĪV]HJR SU]\NáDGX
:V]\VWNLHWHNVW\ Vą FKURQLRQHSUDZDPL DXWRUVNLPL .RSLRZDQLHOXE UR]SRZV]HFKQLDQLHWUHĞFL SR]D QLQLHMV]\PVHUZLVHP MHVW
]DEURQLRQH
3RZ\ĪV]H RJUDQLF]HQLHQLH GRW\F]\ DXWRUD RSUDFRZDQLD NWyUHPX SU]\VáXJXMH SUDZR GR UR]SRZV]HFKQLDQLDZáDVQHJR WHNVWX ZHGOH ZáDVQHJR X]QDQLD