Documente Academic
Documente Profesional
Documente Cultură
SCOPUL LUCRRII
II.
NOIUNI TEORETICE
class TestW2 {
public static void main(String args[ ]) {
double d1=34.8,d2=7;
while(d1 > 0)
{
d1-=d2;
System.out.println(d1);
}
System.out.println(\n);
while(d2<5.3)
{
System.out.println(d2--);
}
}
}
Este o instruciune de ciclare cu test final (corpul se execut cel puin o dat) i
are numr necunoscut de pai.
Exemplu:
class TestDo {
public static void main(String args[ ]) {
char c=a;
int j=9;
do {
System.out.println(c++);
} while(++c <= i);
j=c;
System.out.println(\n j=+j);
do {
System.out.println(j--);
}while(j<95);
}
}
class TestFor2 {
public static void main(String args[ ]) {
float f;
char c;
for(f=1.1f;f<=10.5;f++){
System.out.println(f=+f);
}
for(c=m;c>a;c-=2){
System.out.println(c=+c);
}
}
}
Astfel, se poate mai uor observa c: scopul variabilei i din cadrul instruciunii
for( ) este restricionat la blocul corespunztor lui for( ), incrementarea contorului se
face dup executarea corpului principal al intruciunii for( ), iar apoi se efectueaz din
nou testul.
class TestFor3 {
public static void main(String args[ ]) {
for(int i=0;i<10;i++){
System.out.println("i="+i);
}
// System.out.println("i="+i);
for(int i=0;i<10;i++){
System.out.println("i="+i);
}
}
}
eroare la compilare
j=+j);
Adevrata putere a instruciunii continue este aceea c permite ieirea din corpul
unor bucle iterative imbricate.
S observm i utilizarea etichetei (label) mainLoop care a fost aplicat
instruciunii for( ) de la linia 13. De obicei etichetele se aplic la nceputul unor
instruciuni de ciclare while( ), do/while( ), for( ).
Cnd procesarea vectorului bidimensional de caractere ajunge la o valoare zero,
aceasta este abandonat i se sare la efectuarea incrementrii i++ din cadrul instruciunii
for( ) corespunztoare etichetei mainLoop de la linia 13.
class TestCont2
{
public static void main(String args[ ])
{
int vec[]=new int[10];
for(int i=0;i<vec.length;i+=2)
vec[i]=i*i+20;
for(int i=0;i<vec.length;i++)
{
if (vec[i]==0)
continue;
System.out.println(vec[i]);
}
}
}
class TestB1
{
public static void main(String args[ ])
{
int vec[]=new int[10];
for(int i=0;i<vec.length;i+=2)
vec[i]=i*i+20;
for(int i=0;i<vec.length;i++)
{
if (vec[i]==0)
break;
System.out.println(vec[i]);
}
}
}
class TestB2 {
public static void main(String args[ ]) {
int vec[]={1,4,6,8,12,56,77,2,5};
for(int i=0;i<vec.length;i++) {
et: {
System.out.println(++vec[i]);
if(i%2==0) break et;
System.out.println(--vec[i]);
}
System.out.println(vec[i]);
}
}
}
III.
MODUL DE LUCRU
IV.
TEM
1.
i=0
i=0
i=0
i=1
i=1
i=1
j=0
j=1
j=2
j=0
j=1
j=2
i=0
i=0
i=0
i=1
i=1
i=1
j=0
j=1
j=2
j=0
j=1
j=2
3. Care dintre urmtoarele construcii de ciclare sunt legale? (Alegei una sau mai multe.)
A.
while(int i<7) {
i++;
System.out.println(i=+i);
}
7
B.
int i=3;
while(i) {
System.out.println(i=+i);
}
C.
int j=0;
for(int k=0;j+k !=10; j++,k++) {
System.out.println(j=+j+ k=+k);
}
D.
int j=0;
do {
System.out.println(j=+j);
if(j==3) { continue loop; }
}while(j<10);
numrul de
parametri furnizai n linia de comand la execuia programului. Dac acest numr este 0,
atunci programul afieaz 0 argumente; dac n linia de comand se furnizeaz un
singur parametru atunci programul afieaz 1 argument precum i valoarea acestui
argument; altfel se va afia textul mai multe argumente i valorile acestora.
5. Scriei un program Java ce const dintr-o clas care la rndul ei conine dou funcii.
Prima este o funcie static String f(String s) care afieaz valoarea irului de caractere s
la care se concateneaz irul de caractere < - - > i apoi returneaz s. A doua este
metoda main n cadrul crei se apeleaz funcia f de mai sus n cadrul unor comenzi
System.out.println; funcia f se va apela o dat pentru un ir de caractere oarecare (ales
de programator) i apoi pentru primul argument din linia de comand dac acesta exist.
6. Scriei un program Java ce const din urmtoarele. Se construiete un vector
unidimensional cu elemente de tip float i se iniializeaz elementele cu valori arbitrare
alese de programator (att pozitive ct i negative). ntr-o bucl iterativ se vor afia
valorile acestor elemente cu urmtoarea specificare: dac se ntlnete un element
negativ nu se va afia ci se va sri la urmtorul element din vector.
7. Aceeai problem ca mai sus, dar dac se ntlnete un element negativ se dorete
ieirea din bucla iterativ.