13.nodarbība “Vienrokas bandīts”

Komentēt

Šajā nodarbībā liksim lietā iepriekšējās nodarbībās iegūtās zināšanas par cikliem un sazarojumiem, lai izveidotu pirmo nopietnāko spēli Java valodā – tā saukto “Vienrokas bandītu“! Šādi spēļu automāti ir uzstādīti daudzās spēļu zālēs.

Nekas diži sarežģīts jau nav – 3 līdz 4 skaitļu vai figūru kombinācijas, kurs sakritības gadījumā spēlētaājs kaut ko laimē. Noteikumi var būt itin dažādi, sīkāk par šiem spēļu automātiem un Java programmas izveidi skatieties startit.lv videolekcijā Nr. 19 – atvērt to un skatīties!

1.solis

Izveido vienkāršu programmu, kura parāda 3 skaitļus (bilde no startit.lv videolekcijas):

Vienrocis_0

Programmiņas teksts:

package vienrocis.startit.lv;
public class vienrocis {
    public static void main(String[] args) {
        int first=1;
        int second=2;
        int third=3;
        System.out.println(first+”/”+second+”/”+third);
    }
}

Palaid izpildei un padomā, ko var pamainīt un uzlabot, jo programma tikai parāda 3 skaitļus!

2.solis

Izveido vienkāršu programmu, kura ģenerē un parāda 3 skaitļus (bilde no startit.lv videolekcijas):

Veinrocis_1

Programmiņas teksts var izskatīties šādi (nejaušo skaitļu ģenerēšana ar Random), kur papildinājumi ir ar citu krāsu:

package vienrocis.startit.lv
import java.util.Random;
public class vienrocis {
    public static void main(String[] args) {
       Random randomize=new Random();
        int first=randomize.nextInt(3);
        int second=randomize.nextInt(3);
        int third=randomize.nextInt(3);
        System.out.println(first+”/”+second+”/”+third);
    }
}

3.solis – papildini programmas kodu ar visu 3 ģenerēto skaitļu sakritības pārbaudi (konstrukcija ar if, bilde no startit.lv videolekcijas):

vienrocis_2

Programmiņas teksts pēc pārveidojumiem:

package vienrocis.startit.lv
import java.util.Random;
public class vienrocis {
    public static void main(String[] args) {
       Random randomize=new Random();
        int first=randomize.nextInt(3);
        int second=randomize.nextInt(3);
        int third=randomize.nextInt(3);
        System.out.println(first+”/”+second+”/”+third);
if(first==second && second==third){
            System.out.println(“Visi trīs skaitļi sakrīt!”);
    }
}

Neaimirsti pievienot bibilotēku random importam (CTRL + SHIFT +O)!

4.solis – pievienojam sakritības pārbaudi 2 skaitļiem (else bloks, bilde no startit.lv videolekcijas):

vienrocis_3

Programmiņas teksts pēc pārveidojumiem:

package vienrocis.startit.lv
import java.util.Random;
public class vienrocis {
    public static void main(String[] args) {
       Random randomize=new Random();
        int first=randomize.nextInt(3);
        int second=randomize.nextInt(3);
        int third=randomize.nextInt(3);
        System.out.println(first+”/”+second+”/”+third);
    if(first==second && second==third){
            System.out.println(“Visi trīs skaitļi sakrīt!”); //3 no 3
    }else if(first==second||first==third||second==third)
            System.out.println(“Divi no trīs skaitļiem sakrīt!”);//2 no 3
        else
            System.out.println(“Skaitļi nesakrīt!”);
}

Programmai ir trūkums – tā skaitļu kombināciju izment tikai 1 reizi, bet uzreiz laimējas ļoti reti, tādēļ programmu vajag papildināt tā, lai nesakritības gadījumā, tā dod jaunu skaitļu kombināciju!

Kā to izdarīt? Vai ciklus atceramies? Nu jau jā, tad uz priekšu, liekam klāt Do…while ciklu!

5.solis – pievienoajm ciklu do … while, kas nodrošina spēli līdz laimestam (bilde no startit.lv videolekcijas)!

vienrocis_4

Programmiņas teksts ar ciklu Do…while:

package vienrocis.startit.lv
import java.util.Random;
public class vienrocis {
    public static void main(String[] args) {
       Random randomize=new Random();
        int first=randomize.nextInt(3);
        int second=randomize.nextInt(3);
        int third=randomize.nextInt(3);
do{
        System.out.println(first+”/”+second+”/”+third);
    if(first==second && second==third){
            System.out.println(“Visi trīs skaitļi sakrīt!”); //3 no 3
    }else if(first==second||first==third||second==third)
            System.out.println(“Divi no trīs skaitļiem sakrīt!”);//2 no 3
        else
            System.out.println(“Skaitļi nesakrīt!”);
}while(!(first==second && second==third));
}

Palaid programmu! Strādā? Apsveicami! Tev ir izdevies ievadīt spēles programmu, novērst kļūmes un palaist programmu! Tas ir daudz, bet nebūt ne viss!

6.solis – pamēģini pilnveidot programmu, pievienojot pārbaudi sekojošām sakritībām (balvas var izdomāt citas):

  • sakrīt visi 3 skaitļi (galvenā balva – piem., Laimas šokolāde un CocaCola);
  • sakrīt 1. un 2.skaitļi, balva šokolāde;
  • sakrīt 2. un 3.skaitļi, balva – ChupaCups;
  • sakrīt 1. un 3.kaitļi, balva – CocaCola.
  • vēl var būt varianti, kad ir 1,2,3 vai 3,2,1, arī tos var īpaši apstrādāt, ja ir vēlme patrenēties progarmmēšanā!

Nākošajā nodarbībā – Java programmas realizācija Android aplikācijas veidā!

Kodē, kodē,
Ko Tu kodē?
Spēlītes vai kodē vai?
Kodē, kodē, kodē ganGan jau reiz no Tevis
programmeris sanāks ar!

Veiksmīgu nedēļu!

*******

Advertisements

12.nodarbība “Cikli ar nosacījumiem”

Komentēt

Iepriekšējā nodarbībā tika apskatīti paši vienkāršākie For cikli, kuros ir zināms atkārtojumu skaits, bet šajā nodarbībā iepazīsimies ar nedaudz sareažģitākiem cikliem, kuros izmanto nosacījumus.

Java ir divu veidu cikli ar nosacījumiem:

  • while – cikls ar nosacījumu cikla sākumā (blokshēma pa kreisi);
  • do … while – cikls ar nosacījumu cikla  beigās (blokshēma pa labi)

Bloksh_uzl

Attēls no Start IT videolekcijas

While cikla piemērs

public class Test {
   public static void main(String args[]) {
      int x = 3;//piešķir x sākuma vērtību
      while( x < 9 ) {//pārbauda, vai x ir mazāks par 9
         System.out.print("value of x : " + x );// drukā x vērtību
         x++;//palielina x vērtību par 1
         System.out.print("\n");// pāreja uz jaunu rindu
      }
   }
}

Do … while cikla piemērs

public class Test {
   public static void main(String args[]){
      int x = 5;
      do{
         System.out.print("value of x : " + x );
         x++;
         System.out.print("\n");
      }while( x < 10 );
   }
}

Uzdevumi

  • Kāda ir atšķirība abu programmu darbībā?
  • Pārveidojiet programmas tā, lai tās drukā tikai pāra vai nepāra skaitļus!
  • Pārveidojiet programmu tā, lai tā drukā īso gadu skaitļus, sākot no 2013.gada skaitļa līdz 2043.gadam!

Programma paroles pārbaudei (attēls no Start IT 13.videolekcijas)

Progr_paroles_parb

Uzdevumi:

  • ievadiet attēlā parādīto programmu;
  • pārbaudiet to darbībā – tai jāprasa ievadīt paroli, līdz tā ir korekta (parole);
  • pamēģiniet programmu ar citu paroli (nomainiet programmā parole uz citu);
  • pamēģiniet pārveidot programmu tā, lai tā neļauj minēt vairāk apr 5 reizēm!

***

11.nodarbība “Cikli”

Komentēt

Ieteicams – noskatīties videolekciju par cikliem Start IT portālā!

Ar cikliskiem procesiem saskaramies ikdienā – Zeme apriņķo Sauli, Mēness riņķo ap Zemi, katru gadu atkārtojas vieni un tie paši mēnešu nosaukumi, virzulis auto cilindrā atkārto cikliskas kustības. Tieši tāpat arī datorprogrammās var būt darbības, kuras jāatkārto noteiktu reižu skaitu vai līdz nosacījuma izpildei.

Ilustrācijai – dzīvnieku un augu dzīves cikli:

Mēness fāzes arī mainās cikliski:

Ciklus jeb atkārtojumus  izmanto noteiktu darbību atkārtošanai datorprogrammās un atbilstošas konstrukcijas ir pieejamas arī Java.

Cikls ar nosacījumu blokshēmā:

Lasīšanai par cikliem:

For cikls Java:

For_cikls

For cikls ar paskaidrojumiem (no Start IT prezentācijas):

cikls_for

1.piemērs:

for(int i=0 ; i < 5 ; i++)
{
        System.out.println(“i is : “ + i);
}

Uzdevums – izmainiet ciklu tā, lai izdrukā 12 skaitļus!

2.piemērs “Cikls drukā piramīdu” (vietne)

public class JavaPyramid1 {
 
        public static void main(String[] args) {
               
                for(int i=1; i<= 5 ;i++){
                       
                        for(int j=0; j < i; j++){
                                System.out.print(“*”);
                        }
                       
                        //generate a new line
                        System.out.println(“”);
                }
        }
}
 
/*
Programmas izpildes rezultāts jābūt sekojošs
*
**
***
****
*****
*/

Uzdevumi:

  • izmainiet programmu tā, lai tā izdrukā lielāku piramīdu;
  • izmainiet programmu tā, lai tā izdrukā 2 piramīdas;
  • izmainiet programmu tā, lai tā izdrukā simetrisku piramīdu!

For cikls ar pārtraukumu (izeju no cikla):

public class Test {
   public static void main(String args[]) {
      int [] numbers = {10, 20, 30, 40, 50};
      for(int x : numbers ) {
         if( x == 30 ) {//pārtraukt ciklu, ja x-=30
	      break;
         }
         System.out.print( x );
         System.out.print("\n");
      }
   }
}

Java cikli Youtube video:

Ciklu piemēri no Java Examples:

***

10.nodarbība “Dators min skaitli!”

Komentēt

Šoreiz taps programma, kuras darbība ir pretēja iepriekšējā reizē veidotajai, jo šoreiz skaitli iedomāsies spēlētājs, bet minēs dators!

Ķeramies pie darba!

Kas nepieciešams?

  • Spēles skaitļu diapazons [a;b], izmantosim to pašu skaitļu intervālu no 1 līdz 100 jeb [1;100];
  • spēlētāja iedomātais skaitlis x (šo skaitli zina pats spēlētājs);
  • datora minējums r (nejaušs skaitlis ar Random, ko ģenerē dators);
  • minējuma izvade (lauks Large Text);
  • datora minējuma salīdzināšana ar spēlētāja iedomāto skaitli  – if (x==r) …;
  • tālākās rīcības scenārijs (uzvaras scenārijs) – pārbaudīt, kurā intervāla daļā atrodas datora iedomātais skaitlis r un kā nākošo minējumu izvēlēties jaunā skaitļu intervāla vidu (modificēta intervālu metode veseliem skaitļiem):
    • ja datora iedomātais r  lielāks, tad datoram jāpārbauda [x;b] jeb jaunais x =x+(b-x)/2 (vesels);
    • ja datora iedomātais mazāks, tad datoram jāpārbauda [a;x] jeb jaunais  x=a+(x-a)/2 (vesels).

Nu ko, būvējam programmu!

***

9.nodarbība “Uzmini datora iedomātu skaitli!”

1 komentārs

— ***** —

Vispirms ieteicams noskatīties 10.lekciju Start IT portālā! Ja nu vēl neesat to izdarījuši, tad izdariet to vēlāk, jo ar katru aktivitāti (noskatītu lekciju, izpildītu uzdevumu vai testu) Tu krāsi sev žetonus portālā un cerams, ka Tev izdosies tikt arī pie kādas balviņas, bet ir jāstrādā.

Nevis slinkojot un pūšot” (kā tai senā tautas dziemsā teikts), bet gan lasot, skatoties lekcijas, cītīgi apmeklējot nodarbības (klātienē un virtuālās), cīnoties, mēģinot un eksperimentējot var tikt uz priekšu un attīstīties! Atceries to!

Šoreiz veidosim tādu Android aplikāciju, kura lietotājam piedāvā uzminēt ierīces uzģenerēto skaitli! Aplikācijas būtīa ir sekojoša – aplikācija uzģenerē nejaušu skaitli (atceramies Random) un lietotājam piedāvā iespēju minēt šo skaitli.

Kas nepieciešams aplikācijas formā?

  • Jābūt teksta laukam (Large Text) – tajā tiks ievadīts lietotāja minējums un izvadīti paziņojumi.
  • Jābūt pogai (Button) – ar tās palīdzību lietotājs ievadīs minējumu.

Programmas darbībai nepieciešamais:

  • Globālais mainīgais, kuram aplikācija uzģenerē nejaušu vērtību no norādītā diapazona, piemēram, 1 -100.
  • Mainīgais, kuram piešķir lietotāja ievadīto vērtību  no teksta lauka.
  • Teksta lauka vērtība jāpārvēršs skaitlī un tā jāpiešķir attiecīgam mainīgajam.
  • Jāsalīdzina lietotāja ievadītais skaitlis ar aplikācijas uzģenerēto skaitli un jāpaizņo reuzltāts:
    • ja skaitļi vienādi, tad jāpaziņo, kas skaitlis uzminēts – if (a==b){
    • ja lietotāja ievadītais skaitlis lielāks, tad jāparāda paziņojums “Lielāks”  – ar setText(“Lielāks!”);
    • citādi jeb ja lietotāja ievadītais skaitlis mazāks, tad jāparāda paziņojums “mazāks” – ar setText(“Mazāks!”)!
  • Pogas īpašībai OnClick jāpievieno atbilstošais nosaukums no aplikācijas (visdrīzāk šeit būs click).

Izveidotās aplikācijas teksts var būt šāds:

import java.util.Random;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {
int skaitlis=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Random r = new Random();
int skaitlis = r.nextInt(100)+1;
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void click(View v){
EditText minejumalauks=(EditText)findViewById(R.id.minejums);
TextView teksts=(TextView)findViewById(R.id.teksts);
String vertiba=minejumalauks.getText().toString();
int minejums=0;
try{
minejums=Integer.parseInt(vertiba);
}catch(Exception e){
teksts.setText(“Ievadi skaitli!”);
}
if (minejums==skaitlis){
teksts.setText(“Uzminets!”);
Random r = new Random();
int skaitlis = r.nextInt(100)+1;
}else {
if(minejums>skaitlis){
teksts.setText(“Par lielu!”);
} else {
teksts.setText(“Par mazu!”);
}
}
}
}

Ja atrodam kļūdas programmas tekstā, tad dodiet ziņu!

Ko vēl var darīt?  Pamēģini izdomāt, kā likt aplikācijai fiksēt mēģinājumu skaitu! Kā izpildīto mēginājumu skaitu parādīt spēlētājam?

Nākošajā nodarbībā – par to, kā likt programmai minēt lietotāja iedomāto skaitli un arī par minēšanas uzvaras stratēģiju (jānoskatās 11.lekcija startit.lv portālā)!

***

8.nodarbība “Nejaušie skaitļi”

Komentēt

Šoreiz – nejaušie skaitļi un to pielietojums!

LIELĀ NEJAUŠĪBA jeb gadījumskaitļi! Kas gan tas ir? Vai Tu to zini?

Tie, kuri jau mācās fiziku, droši vien zina par daļiņu haotisko siltumkustību (skatīt) un Brauna kustību. Haotiska ir putekļu kustība – to var redzēt māju bēniņos, kad tur iespīd Saules gaisma. Ja mēs no kosmosa ilgāku laiku skatītos automašīnu kustību un fiksētu to kustības trajektorijas, tad arī šis process mums liktos haotisks, tieši tāpat kā skudru kustība pūznī. Nejaušība ir arī dažādu loteriju pamatā – laimīgais biļetes numurs parasti ir nejaušs skaitlis no pieņemtā skaitļu diapazona, tieši tāpat arī monētas vai kauliņa mešanas rezultātu nosauka neajušie procesi jeb gadījumskaitļi. Šādu nejaušu haotisku procesu pamatā ir gadījumkaitļi (Random) – pievienotajā animācijā katras daļiņas koordinātes kādā laika momentā ir nejauši skaitļi.

Daļiņu haotiskā siltumksutība

Citi piemēri ilustrācijās – skatīt šeit! Ja ilgāku laiku vērsoim 1 daļiņas kustību, tad tās kustības trajektorija būs līdzīga nākošajā attēlā redzamajai.

Nejaušie jeb gadījumskaitļi datorprogrammās

Gadījumskaitļu ģenerēšanai parasti izmanto speciālu funkciju, kuras nosaukums parasti atvasināts no angļu vārda Random (nejaušs). Piemēram, Rnd (n) vai Java valodā tas pats Random! Gadījumskaitļus iespējams relatīvi vienkārši programmēt.

Ja noskatījāties Startit.lv portālā ievietotās lekcijas, tad šobrīd jau nojaušat, ka šo nejaušo skaitļu ģenerēšanas iespēju var lieliski izmantot ļoti daudzās spēlēs un arī citās datorprogrammās:

  • nejaušie pasauļu ģeneratori;
  • skaitļu un vārdu minēšanas spēles;
  • dažādi Loto;
  • Mahjong tipa spēles (kauliņu sākotnejais ievietojums);
  • u.tml.

Kā tad lietot Random savās Java programmās?

Vispirms jau ieteicams pastudēt literatūru:

  • noskatīties 9.lekciju portālā Startit.lv;
  • Function.com par nejaušajiem skaitļiem – lasīt;
  • Java Practices (En) – skatīt;
  • Java.about.com – skatīt;
  • pdf formātā (En, viegli izdrukāt) – skatīt;
  • materiāls ar īsiem korektiem pasakidrojumiem – lasīt;
  • gatavs piemērs ar ciklu (vēl neesam mācījušies) – skatīt.

Darbību secība:

  • importēt bibliotēku Random lietošanai;
  • izveidot  objektu Random;
  • izveidot piemērotu metodi nejaušā skaitļa ieguvei;
  • jāievieš mainīgais metodes rezultāta saņemšanai;
  • ja nepieciešami vairāki nejaušie skaitļi metodi var izmantot atkārtoti;

import java.util.Random – Random klases imports

Random name = new Random(); – izveido objektu Random tavā Java programmā;

int nextInt() – metode dos kādu veselu pseidonejaušu skaitli no 2^32 veseliem skaitļiem;

vai int nextInt(int range) – metode dos kādu veselu pseidonejaušu skaitli no diapzona range: 0 <= x < range.;

int num = r.nextInt(10) + 1; – veselais mainīgais num iegūst vērtību kā veselu nejaušu skaitli  diapazonā 0 -10!

Vienkāršas Java programmas piemērs nejauša vesela skaitļa nejauss ģenerēšanai :

import java.util.Random;
// bibliotēkas Random imports
public class ArrayRandom{
	public static void main(String args[]){
		Random r = new Random(); //Izveido objektu Random tavā Java programmā;
		int nejauss = new int(20);//Izveido metodi un nodod vertību veselam mainīgajam nejauss;
		System.out.print("Nejaušs skaitlis = " +nejauss);//izdrukā mainīgā nejauss vēertību;
	} //main
} //class

Nejaušie skaitļi Android aplikācijā

Līdzīgā veidā varam šeit iegūtās zināšanas izmantot savās Android aplikācijās – skatieties 9.lekciju portālā Startit.lv!

Darbības:

  • izveidot jaunu Android aplikācijas projektu;
  • uzlikt uz formas teksta objektu Large Text, nomainīt tā identifikatoru uz Teksts un Text vērtību uz tukšu;
  • uzlikt uz formas teksta objektu  Button, nomainīt tā identifikatoru uz Poga un Text vērtību uz Ģenerēt;
  • izveidot savu programmas koda fragmentu (kā 9.lekcijā), tas var izskatīties līdzīgs talākajā piemērā dotajam;
    • neaizmirstam pieimportēt mūsu pieprasītās bibliotēkas (CTRL + SHIFT + O);
    • korekti pievienojam R.id ar CTRL +atstarpe palīdzību no parādītā saraksta;
  • klases nosaukumu click pievienojam pogai View => OnClick => click;
  • saglabājam ikreiz pēc katras koda rindiņas pievienošanas un beigās arī to nepiemirstam;
  • palaižam savu Android aplikāciju un  testējam;
  • ja ir Ok, pamainām programmas kodu (kaut ko pieleikeam, izmainām) un atkal testējam!
  • Mobilajā ierīcē var iekopēt atbilstošo aplikāciju  nosaukums.apk (ar paplašinājumu .apk) no projekta Bin mapes!

public void click(View view){
        Random kaulins= new Random();
        int vertiba=kaulins.nextInt(6)+1;
        TextView Teksts=(TextView)findViewById(R.id.Teksts);
        Teksts.setText(“Random = “+vertiba);
    }

Startit.lv 9.lekcijā Android programmas Java koda logs izskatījā šādi:

Random_2

Ja ir velēšanās, tad var mēģināt pievienot sazarojumu, kurā tiek noteikts, ka uzkrītot skaitlim 6, tiek izvadīts paziņojums “Maksimālais!”

if (vertiba==6){                       

Teksts.setText(“Maksimālais!”);

}else{

Teksts.setText(“Random = “+vertiba);

{

Nu tad kā ir? Piekusāt! Tas nekas, paturiet prātā, ka jebkuras prasmes, t.sk. programmēšanas prasmes ir iegūstamas tikai mācoties un strādājot! Galu galā rezultāts būs ieguldīto pūļu vērts, bet līdz tam tiks tikai tie, kuri nepadosies!

***

Ak, kāds vēl nav paguris? Nu tad Eclipsē jaunā Java projektā pablēņojieties ar tālāk pievienoto programmiņu un pamēģiniet tikt skaidrībā, ko šī programma dara un, galvenais, kādēļ tā dara!

import java.util.Random;
public class RandomStars{
	public static void main(String args[]){
		Random r = new Random();
		int num = 0;

	      for(int i = 0; i < 25; i++){
	         //random numbers from 0 to 15:
	         num = r.nextInt(16);
	         for(int j = 0; j < num; j++) 
	    	      System.out.print("*");
	         System.out.println();
	      }
	} //main
} //class

Nu gan šai reizei – viss! Līdz nākošajai nodarbībai!

*****

7.nodarbība “Sazarojumi”

Komentēt

Sazarojumi ir saistīti ar izvēles situāciju apstrādi. Ikdienā bieži sastopamies ar dažādām izvēles situācijām.

Lūk, meitene iet pa taku, taka sadalās! Kurp iet?

cels_sazarojas

Citi piemēri:

  • ja esi visus uzdevumus izpildījis, vari uzspēlēt kādu datorspēli;
  • ja ārā ir auksts, tad jāsaģērbjas siltāk;
  • ja karstā dienā ir pietiekami daudz naudas, tad var nopirkt saldējumu, citādi – konfekti;
  • ja ieskaiti esi slikti nokārtojis, tad jāiet uz konsultācijām, citādi saņemsi “brāzienu”;
  • u.tml.

Vietnes materiālu pētīšanai un apguvei:

Sazarojumi ilustrācijās

saz_0

saz_2

saz_3

saz_4

saz_5

Algoritms “Bulciņa”

Tu jau zini, ka nav ieteicami daudz ēst saldumus, kūkas vai smaklmaizītes (bulciņas), jo tā var iegūt lieko svaru! Tomēr Tev tik ļoti kārojas apēst bulciņu, bet nevari izlemt ēst vai neēst!

Te nu klasiskā izvēles situācija! Ko nu darīt? Ēst to gardo bulciņu vai neēst?

Risinājums: liec lietā vienkāršu algoritmu – met monētu (1Ls)!  Ja uzkrīt lasis ar 1Ls, tad apēd, citādi (ģērbonis) neēd gan!

Algoritms domu kartē

Domuk_bulcina 

Algoritma blokshēma

Bulcina_blokshema

Sazarojums neformālā pierakstā:Ja uzkrīt lasis,tad apēd,citādi (ģērbonis) neēd gan!

  Sazarojums Java pierakstā:

           if (lasis){

                          apēd

                         }else{

                          neēd gan

           {

Sazarojumi piemēros

1,piemērs “Skaitlis”

Programma paprasa skaitli un nosaka, vai skaitlis lielāks par 10, vai mazāks. Ja lielāks, tad izdrukāt “Lielāks!”, citādi izdrukāt “Mazāks!”

Algoritma blokshēma

 alg_skaitlis

Java programmas kods

package Skaitlis;

public class Skailis {

/*** @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 5;
if (x >10) {
System.out.println(“Lielāks!”);
}

                         else {
System.out.println(“Mazāks!”);
}
}

}

2.piemērs “Kvadrāts” (ideja – M.Jegorovs, Accenture)

Kvadrats

Algoritma blokshēma

bloksh_kvadrats

Java programmas kods

public class Kvadrats {

public static void main(String[] args) {

        int x = ?, y = ?;

        if (x ==y) {

                          System.out.println(“Kvadrāts”);

                       } else {

                                  System.out.println(“Taisnstūris”);

                                }

                      }

}

Sazarojumi ar Switch Case

Šādu sazarojumu veidu izmanto, ja ir jāizpilda atšķīrīgas darbības atkarībā no noteikta parametra (mainīgā) vērtības – piemēram, dienas nosaukuma atkarībā no dienas numura, mēneša nosaukuma atkaribā no tā numura, u.tml.

Switch Case ideja

vai arī šajā bildē

Piemērs ar nedēļas dienām:

saz_Case

Reāla Java programma dienas nosaukuma izvadei atkarībā no dienas numura var būt šāda:

package Dienas;
public class Dienas {
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int  day = 3;
        String dayString = null;
        switch (day) {
            case 1:  dayString= “Pirmdiena”;
                     break;
            case 2:  dayString= “Otrdiena”;
                     break;
            case 3:  dayString= “Trešdiena”;
                     break;
            case 4:  dayString= “Ceturtdiena”;
                     break;
            case 5:  dayString= “Piektdiena”;
                     break;
            case 6:  dayString= “Sestdiena”;
                     break;
            case 7:  dayString= “Svētdiena”;
                     break;
                       }
        System.out.println(dayString);
    }

}

Programmiņa ar dienām nedaudz citādā versijā (bilde):

Veiksmīgu darbošanos ar sazarojumiem!

***

Older Entries