-DYD
&ODVVL ZUDSSHU HFODVVLGLVHUYL]LR
)RQGDPHQWLGL,QIRUPDWLFD/%
&ODVVL ZUDSSHU ² &RQFHWWLGLEDVH
,QYDULHVLWXD]LRQLSXzHVVHUHFRPRGRSRWHUWUDWWDUH
LWLSLSULPLWLYLFRPHRJJHWWL
8QDFODVVH ZUDSSHU LQYROXFURLQFDSVXODXQD
YDULDELOHGLXQWLSRSULPLWLYR
,QTXDOFKHPRGR´WUDVIRUPDµXQWLSRSULPLWLYRLQXQ
RJJHWWRHTXLYDOHQWH
ODFODVVH %RROHDQ LQFDSVXODXQ ERROHDQ
ODFODVVH 'RXEOH LQFDSVXODXQ GRXEOH
ODFODVVH ,QWHJHU LQFDSVXODXQ LQW
/DFODVVH ZUDSSHU KDQRPHTXDVLLGHQWLFRDOWLSR
SULPLWLYRFKHLQFDSVXODPDFRQO·LQL]LDOHPDLXVFROD
)RQGDPHQWLGL,QIRUPDWLFD/%
&ODVVL ZUDSSHU (OHQFR
1HOODWDEHOODVRWWRVWDQWHVRQRULSRUWDWLLWLSLSULPLWLYLH
OHUHODWLYHFODVVL ZUDSSHU
$WWHQ]LRQHDOOHGLIIHUHQ]HGLQRPH LQW,QWHJHU H
FKDU&KDUDFWHU
7LSR
&ODVVH³ZUDSSHU´
SULPLWLYR
FRUULVSRQGHQWH
ERROHDQ
%RROHDQ
FKDU
&KDUDFWHU
E\WH
%\WH
VKRUW
6KRUW
LQW
,QWHJHU
ORQJ
/RQJ
IORDW
)ORDW
GRXEOH
'RXEOH
)RQGDPHQWLGL,QIRUPDWLFD/%
&ODVVL ZUDSSHU )XQ]LRQDPHQWR
2JQLFODVVH ZUDSSHU KDFRPHVWDWRVHPSOLFHPHQWHXQ
DWWULEXWRGHOWLSRFKHLQFDSVXOD ,QWHJHU DYUjXQ
DWWULEXWRGLWLSR LQW 'RXEOH XQDWWULEXWRGLWLSR GRXEOH H
FRVuYLD
/HFODVVL ZUDSSHU VRQRVWDWHFRVWUXLWHSHUHVVHUH
LPPXWDELOL DVVXPRQRXQYDORUHDOPRPHQWRGHOOD
FUHD]LRQHHQRQORFDPELDQRPDLSL
4XLQGLSHURJQLFODVVHHVLVWHXQFRVWUXWWRUHFKH
SUHQGHFRPHSDUDPHWURXQDYDULDELOHGHOWLSR
LQFDSVXODWRHORPHPRUL]]DQHOORVWDWR
(VLVWHSRLXQPHWRGRFKHFRQVHQWHGLOHJJHUHLQPRGR
SURWHWWRLOYDORUHGHOORVWDWR
)RQGDPHQWLGL,QIRUPDWLFD/%
,QWHJHU ² ,SRWHVLGLLPSOHPHQWD]LRQH
3RVVLDPRLPPDJLQDUHqXQ·LSRWHVLVHPSOLILFDWDFKH
ODFODVVH ,QWHJHU VLDIDWWDFRVu
FODVV
Integer
{
SULYDWH
SXEOLF
LQW
value;
Integer(int val)
{
value = val;
}
SXEOLF
LQW
intValue()
{
UHWXUQ
value;
}
}
)RQGDPHQWLGL,QIRUPDWLFD/%
,QWHJHU (VHPSLR
9HGLDPRXQVHPSOLFHHVHPSLRGLXVRGHOODFODVVH
,QWHJHU
SXEOLFFODVV
EsempioWrapper
{
SXEOLF
VWDWLFYRLG
main(String args[])
{
int x = 35;
,QWHJHUL[
[
QHZ
,QWHJHU[
L[LQW9DOXH
System.out.println("x =" + x);
}
}
)RQGDPHQWLGL,QIRUPDWLFD/%
,QWHJHU ² $OWULPHWRGL
,QUHDOWjODFODVVH ,QWHJHUFRPHWXWWHOHFODVVL
ZUDSSHUqSLFRPSOHVVDHPHWWHDGLVSRVL]LRQHPROWL
DOWULPHWRGL
$EELDPRLQQDQ]LWXWWRXQVHFRQGRFRVWUXWWRUHFKH
SUHQGHFRPHSDUDPHWURXQDVWULQJDHODFRQYHUWHLQ
XQLQWHURSHUPHPRUL]]DUQHLOYDORUHQHOORVWDWR
SXEOLF
Integer(String s);
$EELDPRSRLDOFXQLPHWRGLFKHFRQYHUWRQRLOYDORUH
LQWHUQRLQXQDOWURWLSR
3HUHVHPSLR
SXEOLF
SXEOLF
String toString();
GRXEOH doubleValue();
)RQGDPHQWLGL,QIRUPDWLFD/%
&ODVVL ZUDSSHU FRPHFODVVLGLVHUYL]LR
/HIXQ]LRQDOLWjGL ,QWHJHU FKHDEELDPRYLVWRILQRDGRUD
VRQRFROOHJDWHDOUXRORGHOOD FODVVHFRPHJHQHUDWRUH
GLLVWDQ]H
/HFODVVL ZUDSSHU PHWWRQRDGLVSRVL]LRQHXQJUDQ
QXPHURGLPHWRGL VWDWLF
4XHVWHIXQ]LRQDOLWjVRQRTXLQGLOHJDWHDOO·LGHDGL
FODVVHFRPHIRUQLWRUHGLVHUYL]LLQGLSHQGHQWHPHQWH
GDOODFUHD]LRQHGLLVWDQ]H
6RQRPHWRGLFKHSRVVLDPRLQYRFDUHVHQ]DFUHDUH
XQ·LVWDQ]D
/·HVHPSLRSLWLSLFRq
SXEOLF
VWDWLF
LQWSDUVH,QW6WULQJ
V
4XHVWRPHWRGRFRQYHUWHXQDVWULQJDLQXQLQWHUR VHQ]D
FUHDUHXQLVWDQ]DGL ,QWHJHU
)RQGDPHQWLGL,QIRUPDWLFD/%
'XHPRGLSHUFRQYHUWLUHVWULQJKHLQLQWHUL
6XOODEDVHGLTXDQWRGHWWRILQRUDDEELDPRGXHPRGLSHU
FRQYHUWLUHXQDVWULQJDLQXQLQWHUR
&RVWUXLDPRXQLVWDQ]DGL ,QWHJHU XVDQGRLOFRVWUXWWRUHFKH
SUHQGHFRPHSDUDPHWURXQDVWULQJDHSRLOHJJLDPRLOYDORUH
LQWHUR
,QWHJHU
int
LQ
Q
LQ
Q
new
,QWHJHU³´
LQLQW9DOXH
2SSXUHLQYRFKLDPRVHPSOLFHPHQWHLOPHWRGR SDUVH,QWVXOOD
FODVVH ,QWHJHU VHQ]DFUHDUHLVWDQ]H
int
Q
Q
,QWHJHUSDUVH,QW³´
(·HYLGHQWHFKHLOVHFRQGRPHWRGRqSLVHPSOLFHHQRQ
FRPSRUWDODFUHD]LRQHGLXQ·LVWDQ]DHTXLQGLqTXHOORSLXVDWR
0 $WWHQ]LRQHQRWDWHODGLIIHUHQ]DGLXWLOL]]RGHLGXHPHWRGL
LQW9DOXH YLHQHLQYRFDWRVXXQLVWDQ]DPHQWUH SDUVH,QW YLHQH
LQYRFDWRVXOODFODVVH
)RQGDPHQWLGL,QIRUPDWLFD/%
&ODVVLGLVHUYL]LR
1RUPDOPHQWHLOUXRORSULQFLSDOHGLXQDFODVVHqTXHOOR
GLFUHDUHLVWDQ]HWXWWHOHFODVVLFKHDEELDPRFUHDWR
QHLQRVWULHVHPSL&RXQWHU6HWHFFDYHYDQRTXHVWD
LPSRVWD]LRQH
$EELDPRSHUzYLVWRFKHQHOFDVRGHL ZUDSSHU FL
WURYLDPRGLIURQWHDFODVVLLQFXLLOUXRORGLFUHD]LRQHGL
LVWDQ]HHTXHOORGLIRUQLWXUDGLVHUYL]LVRQRHJXDOPHQWH
LPSRUWDQWL
(VLVWRQRDGGLULWWXUDFODVVLFKHVYROJRQRVRORLOUXRORGL
IRUQLWRULGLVHUYL]LHQRQKDQQRODFDSDFLWjGLFUHDUH
LVWDQ]H
6RQRFODVVLFKH
1RQKDQQRFRVWUXWWRUL
+DQQRWXWWLLPHWRGLGLFKLDUDWLFRPH VWDWLF
)RQGDPHQWLGL,QIRUPDWLFD/%
/DFODVVH 0DWK
/·HVHPSLRSLHYLGHQWHGLFODVVHGLVHUYL]LRLQ-DYDqODFODVVH
0DWK
/DFODVVH 0DWK ULVROYHXQSUREOHPDGLTXHVWRWLSR
'DOPRPHQWRFKHLQ-DYD
1RQHVLVWRQRIXQ]LRQLPDVRORPHWRGLGLXQDTXDOFKHFODVVH
,QXPHULUHDOL IORDW R GRXEOH QRQVRQRRJJHWWLPDWLSL
SULPLWLYLHTXLQGLQRQKDQQRPHWRGL
&RPHVLIDDFDOFRODUHODUDGLFHTXDGUDWDLOORJDULWPRLOVHQR RLO
FRVHQRGLXQQXPHUR"
8QDSRVVLELOHVROX]LRQHVDUHEEHTXHOODGLLQVHULUHQHOODFODVVH
ZUDSSHU'RXEOH HLQ )ORDWXQPHWRGRSHURJQLIXQ]LRQH
PDWHPDWLFD
$EELDPRSHUzYLVWRFKHTXHVWRDSSURFFLRqFRPSOLFDWRHSRFR
HIILFLHQWHRJQLYROWDFKHGHYRFDOFRODUHXQDIXQ]LRQHPDWHPDWLFD
GRYUHLFUHDUHXQ·LVWDQ]DGL 'RXEOH
6LqTXLQGLVFHOWDXQDVWUDGDSLVHPSOLFHHVLVWHXQDFODVVH
GHQRPLQDWD 0DWKFKHGHILQLVFH VRORPHWRGLVWDWLFL HRJQLPHWRGR
FRUULVSRQGHDGXQDIXQ]LRQHPDWHPDWLFD
)RQGDPHQWLGL,QIRUPDWLFD/%
,PHWRGLGL 0DWK
0DWK FRQWLHQHXQJUDQQXPHURGLPHWRGL
7XWWLLPHWRGLVRQRGLFKLDUDWLFRPH SXEOLF VWDWLF
9HGLDPROLSHUFDWHJRULH
3RWHQ]HUDGLFL SRZH VTUW
)XQ]LRQLWULJRQRPHWULFKHVLQFRV WDQ«
/RJDULWPRQDWXUDOHHGHVSRQHQ]LDOHORJ H[S
)XQ]LRQLGLFRQYHUVLRQHGDUHDOLDLQWHULURXQG
9DULHHGHYHQWXDOL DEV PD[«
'LPROWLPHWRGLHVLVWRQRYHUVLRQL RYHUORDGHG SHU
JHVWLUHLYDULWLSL3HUHVHPSLR PD[KDGHILQL]LRQL
SXEOLF
SXEOLF
SXEOLF
SXEOLF
VWDWLF
LQW
max(LQW a, LQW b)
VWDWLF ORQJ max(ORQJ a, ORQJ b)
VWDWLFIORDW max(IORDW a, IORDW b)
VWDWLF GRXEOH max(GRXEOH a, GRXEOH b)
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRGLXVRGL 0DWK
9HGLDPRXQHVHPSLRGLXWLOL]]RGL 0DWK
0DWK qFRQWHQXWDQHOSDFNDJH MDYDODQJ HTXLQGL QRQq
QHFHVVDULRXVDUHLPSRUW
SXEOLFFODVV
EsempioMath
{
SXEOLF
VWDWLFYRLG
main(String args[])
{
GRXEOH
x,y;
x = 5;
\
0DWKORJ[
System.out.println(“Il logaritmo di “+x+” è “+y);
[
0DWK3,
// Pi greco/2
\
0DWKVLQ[
System.out.println(“Il seno di “+x+” è “+y);
}
}
)RQGDPHQWLGL,QIRUPDWLFD/%
0DWKFKHFRV·q3,
1HOO·HVHPSLRDSSHQDYLVWRF·qXQ·LVWUX]LRQH
VWUDQD
[
0DWK3,
0DWK3,HYLGHQWHPHQWHQRQqXQPHWRGRQRQ
KDOHSDUHQWHVLqXQDWWULEXWRFKHKDFRPH
YDORUH
π «
3HUzF·qTXDOFRVDFKHQRQWRUQD
*OLDWWULEXWLFRVWLWXLVFRQRORVWDWRGL
XQ·LVWDQ]D
3HUzDEELDPRGHWWRFKHODFODVVH 0DWK QRQ
JHQHUDLVWDQ]H
&KHFRV·q3,"
)RQGDPHQWLGL,QIRUPDWLFD/%
$WWULEXWLGLFODVVH
3,qLQIDWWLTXDOFRVDGLGLYHUVRGDXQQRUPDOHDWWULEXWR
/DVXDGHILQL]LRQHq
SXEOLF
VWDWLF
ILQDO
GRXEOH
3,
(·PDUFDWRFRPH VWDWLF HFRPHWDOHKDXQVLJQLILFDWR
VLPLOHDLPHWRGL VWDWLF
1RQDSSDUWLHQHDGXQDLVWDQ]DPDDOODFODVVH
ËXQDWWULEXWRFKHHVLVWHSHUWXWWRLOWHPSRGLYLWD
GHOO·DSSOLFD]LRQH
3HUXVDUORIDFFLDPRULIHULPHQWRDOQRPHGHOOD
FODVVHHQRQDGXQDYDULDELOHGLWLSR 0DWK
[
0DWK3,
3LqGHILQLWRDQFKHFRPH ILQDO SHUFKpqXQDFRVWDQWH
QRQGHYHHVVHUHSRVVLELOHFDPELDUHLOVXRYDORUH
)RQGDPHQWLGL,QIRUPDWLFD/%
$WWULEXWLGLFODVVH 0$WWHQ]LRQH VLWUDWWDGLXQFDVRVSHFLDOHQRUPDOPHQWH
JOLDWWULEXWLVLWURYDQRQHOO·LVWDQ]DFRVWLWXLVFRQROR
VWDWRGHOO·LVWDQ]D
6HSHUzPDUFKLDPRXQDWWULEXWRFRQLOPRGLILFDWRUH
VWDWLF TXHVWRDWWULEXWRYLHQHPHVVRQHOODFODVVHHQRQ
HQWUDDIDUSDUWHGHOORVWDWRGHOO·LVWDQ]D
*OLDWWULEXWL VWDWLF YHQJRQRFKLDPDWL DWWULEXWLGLFODVVH
LQTXDQWRQRQDSSDUWHQJRQRDGXQLVWDQ]DPDDOOD
FODVVHQHOVXRLQVLHPH
6LXVDDQFKHLQTXHVWRFDVRLOPDUFDWRUH VWDWLF SHUFKp
TXHVWLDWWULEXWLHVLVWRQRSHUWXWWRLOWHPSRGLYLWD
GHOO·DSSOLFD]LRQH
1RQYHQJRQRFUHDWLGLQDPLFDPHQWHFRPHDYYLHQHSHU
JOLDWWULEXWLFKHFRVWLWXLVFRQRORVWDWRGHOO·LVWDQ]D
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRODFODVVH/RWWR 6SHFLILFKH
9RJOLDPRGHILQLUHXQDFODVVHFKHFKLDPHUHPR/RWWR
FKHPHWWHDGLVSRVL]LRQHXQ VHUYL]LR GLHVWUD]LRQHGL
QXPHULGHOORWWR
/HVSHFLILFKHVRQR
2JQLYROWDFKHLQYRFKLDPRLOPHWRGRFKHUHDOL]]D
TXHVWRVHUYL]LRFLYLHQHUHVWLWXLWRXQQXPHUR
FDVXDOHFRPSUHVRIUDH
9RJOLDPRFKHTXHVWRVHUYL]LRVLDVHPSUHD
GLVSRVL]LRQHHTXLQGLQRQVLDOHJDWRDOODFUHD]LRQH
GLLVWDQ]H
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRODFODVVH/RWWR ² &RPSRUWDPHQWR
/HVSHFLILFKHFLGLFRQRFKHGREELDPRUHDOL]]DUHXQD
FODVVHGLVHUYL]LR VHQ]DFRVWUXWWRUL H FRQWXWWLLPHWRGL
VWDWLFL
&RPHVHPSUHOHVSHFLILFKHFLSRUWDQRDGHILQLUHLO
FRPSRUWDPHQWRGHOODFODVVHRYYHURLPHWRGLSXEEOLFL
QHOQRVWURFDVRVHUYHXQVRORPHWRGR
SXEOLF
VWDWLF
LQWJHW1XP
,OGLDJUDPPD80/VDUj
/RWWR
+getNum() : int
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRODFODVVH/RWWR ² 6FHOWH LPSOHPHQWDWLYH
$EELDPRELVRJQRGLXQPHFFDQLVPRSHUJHQHUDUH
QXPHULFDVXDOL
)RUWXQDWDPHQWHODFODVVH 0DWK PHWWHDGLVSRVL]LRQH
XQPHWRGRVWDWLFRFRPHWXWWLJOLDOWULFKHJHQHUD
QXPHULUHDOLFDVXDOLFRPSUHVLIUDH
SXEOLF
6DUjVXIILFLHQWHVFDODUHLOYDORUHUHVWLWXLWRGD UDQGRP
VWDWLFGRXEOHUDQGRP
VXOO·LQWHUYDOORHWUDVIRUPDUORLQXQLQWHURXVDQGR
XQDOWURPHWRGRGL 0DWKURXQG
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRODFODVVH/RWWR ² 'HILQL]LRQH
'HILQLDPRTXLQGLODFODVVH
SXEOLF
FODVV
Lotto
{
SULYDWH
SXEOLF
Lotto() {}
VWDWLFLQW
getNum()
{
LQW
n;
n = (int)Math.round(Math.random() * 89)+1;
UHWXUQ n;
}
}
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRODFODVVH/RWWR 9DULDQWH
3URYLDPRDGLQWURGXUUHXQDYDULDQWHDJJLXQJHQGRXQD
VSHFLILFDDTXHOOHJLjIRUPXODWH
6LYXROHFKHQRQSRVVDHVVHUHHVWUDWWRORVWHVVR
QXPHURSHUGXHYROWHGLVHJXLWR
'REELDPRPHPRUL]]DUHO·XOWLPRQXPHURHVWUDWWRH
WHQHUQHFRQWRDOO·HVWUD]LRQHVXFFHVVLYD
&RPHIDFFLDPR"/DFODVVH/RWWRQRQJHQHUDLVWDQ]HH
TXLQGLQRQVLSXzXWLOL]]DUHXQDQRUPDOHYDULDELOH
/·XQLFDVROX]LRQHqTXHOODGLXVDUHXQ DWWULEXWRGL
FODVVHFLRqXQDWWULEXWRPDUFDWRFRPH VWDWLF
/RWWR
-ultimo : int
+getNum() : int
)RQGDPHQWLGL,QIRUPDWLFD/%
(VHPSLRODFODVVH/RWWR ² 'HILQL]LRQHFRQYDULDQWH
'HILQLDPRTXLQGLODFODVVHLQPRGRGDWHQHUFRQWR
GHOODQXRYDVSHFLILFD
SXEOLF
FODVV
Lotto
{
SULYDWH
VWDWLFLQW
SULYDWH
Lotto() {}
SXEOLF
VWDWLFLQW
ultimo;
getNum()
{
LQW
n;
GR
n = Math.round((float)Math.random() * 89)+1;
ZKLOH (n==ultimo);
ultimo = n;
UHWXUQ n;
}
}
)RQGDPHQWLGL,QIRUPDWLFD/%
&RQFOXVLRQL
$EELDPRYLVWRQHOO·HVHPSLRDSSHQDVYROWRFKHLQ
TXDOFKHFDVRJOLDWWULEXWLGLFODVVHTXHOOLPDUFDWL
FRPH VWDWLF SRVVRQRHVVHUHXWLOL
6LWUDWWDSHUzVHPSUHGLVLWXD]LRQLSLXWWRVWRSDUWLFRODUL
0$WWHQ]LRQH QRQIDWHYLLQJDQQDUHGDTXHVWLHVHPSL
1HLFDVLQRUPDOLJOLDWWULEXWLDSSDUWHQJRQRDOOH
LVWDQ]HHQHFRVWLWXLVFRQRORVWDWR
2JQLLVWDQ]DKDLOVXRVWDWRLVXRLDWWULEXWL
VHSDUDWRGDTXHOORGHOOHDOWUHLVWDQ]H
/RVWDWRHTXLQGLJOLDWWULEXWLFKHORFRPSRQJRQR
FRPLQFLDDHVLVWHUHTXDQGRYLHQHFUHDWDO·LVWDQ]DH
VPHWWHGLHVLVWHUHTXDQGRLO JDUEDJHFROOHFWRU OD
GLVWUXJJH
)RQGDPHQWLGL,QIRUPDWLFD/%
/RWWRJLXVWR
SXEOLF
FODVV
Lotto
{
SULYDWH
VWDWLFLQW>@
estratti
^`
SULYDWH
VWDWLFLQW
SULYDWH
Lotto() {}
numEstratti = 0
SULYDWH
VWDWLFERROHDQ
exists(LQW m)
{
ERROHDQ
found = false;
(int i=0; i<numEstratti; i++)
found = found || (estratti[i]==m);
UHWXUQ found;
IRU
}
SXEOLF
VWDWLFYRLG
SXEOLF
VWDWLFLQW
reset() { numEstratti=0 }
getNum()
{
LQW
n;
GR
n = Math.round(Math.random() * 89)+1;
(exists(n));
estratti[numEstratti]=n;
numEstratti++;
UHWXUQ n;
ZKLOH
}
}
)RQGDPHQWLGL,QIRUPDWLFD/%
© Copyright 2026 ExpyDoc