FunWiki : UniAlgdsC5w

HomePage :: Categories :: PageIndex :: RecentChanges :: RecentlyCommented :: Login/Register
Příklad 1: Sestavte algoritmus, který v posloupnosti čísel a1, a2, …, an najde první člen větší než 177 a zamění jej s členem a1. Pokud v posloupnosti člen větší než 177 neexistuje, nechá posloupnost uloženou beze změny.

začátek
  a[n + 1] := 117;
  index := 1;
  dokud a[index] < 117 opakuj
	index := index + 1; 
  jestliže index > n pak
	napiš("Číslo s danou vlastností se v posloupnosti nevyskytuje.");
  jinak
  zažátek
	pom := a[1];
	a[1] := a[index];
	a[index] := pom;
  konec
konec.



Příklad 2: Sestavte algoritmus, který v posloupnosti n čísel a1, a2, …, an najde poslední sudé číslo ak, a pak vypíše členy posloupnosti od následujícího (k+1). členu až do posledního členu posloupnosti. Pokud v posloupnosti sudé číslo není, podá o tom informaci.

začátek
  sudé := 0;
  pro index od 1 do n opakuj
	pokud a[index] mod 2 = 0 pak
	  sudé := index;
  pokud sudé > 0 pak
	pro index od sudé do n opakuj
	  napiš(a[index]);
  jinak
	napiš("Žádné sudé číslo nebylo nalezeno.");
konec.



Příklad 3: Sestavte algoritmus, který v posloupnosti n čísel a1, a2, …, an najde první a poslední sudé číslo a vypíše všechna lichá čísla posloupnosti, která mezi nimi leží. Pokud v posloupnosti sudé číslo neexistuje nebo existuje jediné sudé číslo, podá o tom informaci.

začátek
  první := 0;
  poslední := 0;
  pro index od 1 do n opakuj
	pokud a[index] mod 2 = 0 pak
	  pokud první = 0 pak
	    první := a[index];
	  jinak
	    poslední := a[index];
  pokud první > 0 pak
	pokud poslední > 0 pak
	  pro index od první do poslední opakuj
	    pokud a[index] mod 2 != 0 pak
	      napiš(a[index]);
	jinak
	  napiš("Nalezeno pouze jedno sudé číslo.");
  jinak
	napiš("Nenalezeno žádné sudé číslo.");
konec.



Příklad 4: Sestavte algoritmus, který v posloupnosti n čísel a1, a2, …, an najde první dva kladné členy a z nich vypočítá a vypíše aritmetický průměr. Pokud se v posloupnosti dvě kladná čísla nenachází, podá o tom informaci.

začátek
  první := 0;
  druhý := 0;
  index := 1;
  dokud (index <= n) A druhý = 0 opakuj
  začátek
	pokud a[index] > 0 pak
	  pokud první = 0 pak
	    první := a[index];
	  jinak
	    druhý := a[index];
	index := index + 1;
  konec
  pokud první > 0 pak
	pokud druhé > 0 pak
	  napiš((první + druhé) / 2);
	jinak
	  napiš("Nalezeno pouze jedno kladné číslo.");
  jinak
	napiš("Nenalezeno žádné kladné čílso.");
konec.

There are no comments on this page. [Add comment]

Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by Wikka Wakka Wiki 1.1.5.3
Page was generated in 0.0409 seconds