JAVA predavanje 3

java_thumbPredavanja št.3

 

Primer:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class PloscinaDoWhile{
	public static void main (String[] args){
		int i = 1;
		do{
			double a=BranjePodatkov.preberiDouble();
			double b=BranjePodatkov.preberiDouble();
			double c=BranjePodatkov.preberiDouble();
			if(a+b>c && a+c>b && b+c>a){
				double s=(a+b+c)/2;
				double p=Math.sqrt(s*(s-a)*(s-b)*(s-c));
				System.out.println(p);
			}
			else{
				System.out.println(»Napačni podatki!«);
			}
			i++;	//povečamo števec
		}while(i <= 5);
	}
}

 


V CMDju ga zaženemo ...

 

Po 5ih interakcijah se program zaključi, neglede na to, ali so podatki pravilni ali napačni.


Primer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class PloscinaWhile{
	public static void main (String[] args){
		int i = 1;
		while(i<=5){
			double a=BranjePodatkov.preberiDouble();
			double b=BranjePodatkov.preberiDouble();
			double c=BranjePodatkov.preberiDouble();
			if(a+b>c && a+c>b && b+c>a){
				double s=(a+b+c)/2;
				double p=Math.sqrt(s*(s-a)*(s-b)*(s-c));
				System.out.println(p);
			}
			else{
				System.out.println(»Napačni podatki!«);
			}
			i++;	//povečamo števec
		}
	}
}

 

 


Zalaufaj :D

 

Primer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class PloscinaFor{
	public static void main (String[] args){
		for(int i=1; i<=5; i++){
			double a=BranjePodatkov.preberiDouble();
			double b=BranjePodatkov.preberiDouble();
			double c=BranjePodatkov.preberiDouble();
			if(a+b>c && a+c>b && b+c>a){
				double s=(a+b+c)/2;
				double p=Math.sqrt(s*(s-a)*(s-b)*(s-c));
				System.out.println(p);
			}
			else{
				System.out.println(»Napačni podatki!«);
			}
		}
	}
}



Če vemo, koliko korakov je potrebnih je FOR najboljši. Kadar število korakov ni znano uporabimo do-while ali while.

Nekaj tipičnih postopkov

 

  • računanje vsote
  • iskanje maksimuma in minimuma
  • gnezdenje zank

 

Računanje vsote


Računanje vsote poteka v zanki. Pred vstopom spremenljivka vsota dobi vrednost 0, potem pa v zanki prištevamo posamezne člene.

Primer: Napišite program, ki prebere 5 števil in izračuna njihovo vsoto.

 

vsota

 

 

1
2
3
4
5
6
7
8
9
10
11
public class Vsota{
	public static void main (String[] args){
		int vsota = 0;
		for(int i=1; i<=5; i++){
			System.out.print(»Vnesi stevilo«);
			int x = BranjePodatkov.preberiInt();
			vsota = vsota + x;
		}
		System.out.println(»Vsota znasa« + vsota);
	}
}

Računanje maksimuma m števil

 

max

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class Maksimum{
	public static void main (String[] args){
		System.out.print(»Vnesi stevilo vnosov«);
		int n = BranjePodatkov.preberiInt();
 
		int max = Integer.MIN_VALUE;	//najmanjše možno celo število
		for (int i=1; i<=n; i++){
			System.out.print(»Vnesi stevilo«);
			int x = BranjePodatkov.preberiInt();
			if(x > max){
				max = x;
			}
		}
		System.out.println(»Maksimum« + max);
	}
}



Primer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class Maksimum2{			//drug način – možne napake
	public static void main (String[] args){	
		System.out.print(»Vnesi stevilo vnosov«);
		int n = BranjePodatkov.preberiInt();
		System.out.print(»Vnesi stevilo«);
		int x = BranjePodatkov.preberiInt();
		int max = x;		//za max dolocimo prvo vneseno vrednost
 
		for (int i=2; i<=n; i++){
			System.out.print(»Vnesi stevilo«);
			x = BranjePodatkov.preberiInt();
			if(x > max){
				max = x;
			}
		}
		System.out.println(»Maksimum« + max);
	}
}

 

Izpis poštevanke

 

postevanka

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Postevanka{			
	public static void main (String[] args){
		System.out.print(»Vnesi velikost«);
		int n = BranjePodatkov.preberiInt();
 
		for (int i=1; i<=n; i++){
			//izpiši i-to vrstico poštevanke
			for (int j=1; j<=n; j++){
				System.out.print(i*j);
				System.out.print(»   «);
			}
			System.out.println();		//skok v novo vrstico
		}
	}
}



*** namesto System.out.print(i*j); je lahko tudi: System.out.printf(»%5d«, i*j);


------------------------------------------

Vmesna snov


Postfiksno povečevanje

int a = 4;
int b = a++;        //najprej se a zapiše v b, potem se poveča a
//rezultat:    a==5;    b==4;


Prefiksno povečevanje


int a = 4
int b = ++a        //najprej se a poveča, potem se zapiše v b
//rezultat:    a==5;    b==5;

------------------------------------------



System.out.printf( ... );

%[zastavica][širina][.natančnost]TIP

[širina]   -   širina celotnega zapisa, skupaj z decimalkami

[.natančnost]   -   za float in double (na koliko decimalk naj zaokroži)

TIP

  • %d – int, short, byte, long
  • %f – float, double
  • %c – char
  • %b – boolean
  • %s – niz



Primer:

int a = 2.578;
System.out.printf(»Znesek: %7d«, a)
//izpiše 0002578

Primer:

double d = 15,728
System.out.printf(»Znesek: %10.1f«, d);
//izpiše 00000015.7

 

Pa nasvidenje do naslednjih predavanj :)

Vsi vodiči so na voljo BREZPLAČNO!
Pišite mi

Želite mnenje ali pomoč pri vašem projektu?

Pišite mi in bom pomagal, kakor bom v tistem trenutku lahko.