Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Programi
  • Razvoj lekcije o programiranju linearnih algoritama. Izrada lekcije o programiranju linearnih algoritama Odredite k-tu sekundu dana

Razvoj lekcije o programiranju linearnih algoritama. Izrada lekcije o programiranju linearnih algoritama Odredite k-tu sekundu dana

Opis prezentacije po pojedinačnim slajdovima:

1 slajd

Opis slajda:

Centar za napredne studije "Moskovski regionalni centar za internetsko obrazovanje" "Programiranje linearnih algoritama u Pascalu"

2 slajd

Opis slajda:

Za prikaz rezultata u Pascalu koristi se operator: Što od sljedećeg nije uključeno u abecedu jezika Pascal? Latinska mala i velika slova podvlaka Koji niz znakova može poslužiti kao naziv u jeziku Pascal? print start readln NEXT funkcijske riječi ruska mala i velika slova _mas maS1 d2 2d _mas maS1 d2 2d NEXT pisati pisati ruska mala i velika slova

3 slajd

Opis slajda:

Odaberite ispravan odjeljak deklaracije varijable Početak programa Naslov programa Izlazni operator Operacija dodjele Operator unosa Kraj programa Vrsta cjelobrojnih vrijednosti Vrsta stvarnih vrijednosti readln kraj programa begin:= var integer real writeln var begin:= pravi program writeln kraj readln

4 slajd

Opis slajda:

Napravite blok dijagram za zbrajanje brojeva A+B unesenih s tipkovnice START Input A,B S=A+B OUTPUT S END program Summa; kraj. Var a,b,S: cijeli broj; početak S= a + b; writeln('S=', S); readln(a,b);

5 slajd

Opis slajda:

Prvi program: izračunati opseg i površinu kruga ako je r=5,4 writeln("c =", c:6:4); writeln("s=", s:6:4) kraj. Rezultat programa: write("Enter r>>"); readln(r); program n_1; const pi=3,14; var r, c, s: pravi; početak r:=5,4; c:=2*pi*r; s:=pi*r*r; Poboljšan program Rezultat programa: Turbo Pascal Version 7.0 c =33.9120 s =91.5624 Turbo Pascal Uersion 7.0 Izračun opsega i površine kruga Unesite r>> 8.5 c =53.3800 s =226.8650

6 slajd

Opis slajda:

Numerički tipovi podataka Standardne Pascal funkcije: Funkcija Svrha Tip argumenta Tip rezultata abs(x) Modulex integer, real Isto kao argument sqr(x) Squarex integer, real Isto kao argument sqrt(x) Kvadratni korijen izx integer , real real round(x) Zaokruživanje na najbliži cijeli broj real frac(x) Integer partx real int(x) Fractional partx real random Slučajni broj od 0 do 1 - real random(x) Slučajni broj od 0 do x integer integer

7 slajd

Opis slajda:

Operacije div i mod program n_4; var x, a, b, c, s: cijeli broj; begin writeln("Pronalaženje zbroja znamenki troznamenkastog broja"); write("Unesite izvorni broj>>"); readln(x); a:=x div 100; b:=x mod 100 div 10; c:=x mod 10; s:=a+b+c; writeln("s= ", s) kraj. Troznamenkasti broj može se predstaviti kao sljedeći zbroj: x = a·100 + b·10 + c, gdje su a, b, c znamenke broja. Program za pronalaženje zbroja znamenki troznamenkastog cijelog broja unesenog s tipkovnice.

8 slajd

Opis slajda:

Tipovi podataka znakova i niza Funkcija ord pretvara slovo u njegov numerički kod. Simboli su sva slova i ikone koje se nalaze na tipkovnici. Da biste unijeli znakovne varijable u program, morate navesti znakovni tip podataka char za njih. Funkcija chr pretvara numerički kod znaka u sam znak. Vrijednost string vrijednosti (string type) proizvoljan je niz znakova omeđenih apostrofima. W chr 87 ord W % 37 % 4 52 4 S 83 S var c: niz c:= chr(52)+chr(37) s 4%

Slajd 9

Opis slajda:

Program znakovnih i nizovnih tipova podataka n_5; var a: char; kod: cijeli broj; b: niz; begin writeln("Kod i linija"); write("Unesi početno slovo>>"); readln(a); kod:=ord(a); b:=chr(kod–1)+a+chr(kod+1); writeln("Slovni kod", a, "-", kod); writeln("Redak: ", b) kraj. Prikaz koda slova unesenog s tipkovnice Prikaz niza od tri slova na ekranu. Koji?

10 slajd

Opis slajda:

Istraživanje funkcija round, int i frac Izvršite program nekoliko puta za x (10.2; 10.8; –10.2; –10.8). Koja će biti vrsta rezultata svake od ovih funkcija? program n_3; var x: pravi; begin writeln("Istraživanje funkcija round, int, frac"); write("Unesite x>>"); readln(x); writeln("Zaokruživanje - ", zaokruži(x)); writeln("Cjelobrojni dio - ", int(x)); writeln("Razlomak - ", frac(x)) kraj. ?

11 slajd

Opis slajda:

START Ulaz x1,x2,y1,y2 IZLAZ S KRAJ duljina programa; kraj. var x1,x2,y1,y2: cijeli broj; početak d=sqrt(sqr(x2-x1))+sqrt(y2-y1)); writeln('d=', d); write("UNESITE KOORDINATU X1= "); readln(X1); write("UNESITE Y1 KOORDINATU= "); readln(Y1); write("UNESITE KOORDINATU X2= "); readln(X2); write("UNESITE Y2 KOORDINATU= "); readln(Y2);

12 slajd

Opis slajda:

Pitanja i zadaci Za zadani x izračunajte y pomoću formule y = x3 + 2,5x2 – x +1. U ovom slučaju: a) zabranjena je operacija potenciranja; b) u jednom operatoru dodjele ne možete koristiti više od jedne aritmetičke operacije (zbrajanje, množenje, oduzimanje); c) u programu se ne može koristiti više od pet operatora dodjele. Savjet: Pretvorite izraz u: y =((x + 2,5)x –1)x +1. Pomoću zadanih koordinata točaka A i B izračunajte duljinu dužine AB. Poznate su duljine stranica trokuta a, b, c. Napišite program za izračunavanje površine ovog trokuta. Poznate su koordinate vrhova A, B, C trokuta. Napišite program za izračunavanje površine ovog trokuta. Ako se iznos poreza izračunava u rubljama i kopejkama, tada ga porezna služba zaokružuje na najbližu rublju (do 50 kopejki - s manjkom, preko 50 kopejki (uključujući 50) - s viškom). Pomoću računala unesite točan iznos poreza i prikažite koliko dugujete. Istražite rad slučajne funkcije uzastopnim pokretanjem programa: program n_8; var x, n: cijeli broj; begin writeln("Istraživanje slučajne funkcije"); randomize (*za generiranje različitih nasumičnih brojeva svaki put kada se program pokrene*); write("Unesite x>>"); readln(x); write("Unesite n>>"); readln(n); writeln("slučajni(", x, ")=", slučajni(x)); writeln("random(", x, ")+", n, "=", random(x)+n) kraj. Kako možete dobiti slučajni broj iz intervala (0; x)? Kako možete dobiti slučajni broj iz intervala (0; x]? Kako možete dobiti slučajni broj iz intervala (n; x + n)? Jedna tvrtka je izdala srećke tri kategorije: za mlade, za odrasle i za starije osobe, brojevi listića za svaku kategoriju su u rasponu: za mlade - od 101 do 200; u svakoj znamenki Napišite program u Pascalu za proizvoljni dvoznamenkasti broj koji određuje: a) zbroj i umnožak njegovih znamenki; b) broj nastao preslagivanjem znamenki izvornog broja. Napišite program u Pascalu koji izračunava zbroj slovnih kodova u riječi BYTE. Napišite program u Pascalu koji prikazuje niz znakova čiji su kodovi 66, 69, 71, 73, 78. Razvijte program koji zahtijeva tri vrijednosti niza - međusobno povezani pridjev, imenicu i glagol, a zatim ispisuje sve varijante fraze pomoću unesenih riječi. Date su vrijednosti cjelobrojnih varijabli: a = 10, b = 20. Kolika će biti vrijednost logičke varijable rez nakon operacije dodjele? a) rez:=(a=10) ili (b>10) b) rez:=(a>5) i (b>5) i (a<20) and (b<30) в) rez:=((not(a<15)) or (b>20) Napišite program koji upisuje true ako je tvrdnja točna, a false u protivnom: a) zbroj znamenki troznamenkastog broja x je paran broj; b) trokut sa stranicama a, b, c je razmjeran. Prolazi k-ta sekunda dana. Izradite program koji na temelju unesene k-te sekunde dana utvrđuje koliko je cijelih sati h i cijelih minuta m prošlo od početka dana. Na primjer, ako je k = 13257 = 3 x 3600 + 40 x 60 + 57, tada je h = 3 i m = 40. Prikažite izraz: To je ... sati ... minuta. Umjesto elipsa, program bi trebao ispisati vrijednosti h i m, odvajajući ih od riječi s točno jednim razmakom. Napišite program u Pascalu koji implementira algoritam za blagajnika da kupcu da sitniš u najmanjem broju novčanica od 500 (k500), 100 (k100), 50 (k50) i 10 (k10) rubalja. Primjer ulaznih podataka Primjer izlaznih podataka xa=2 ya=1 xb= 10 yb= 7 | AB | = 10.0 Primjer ulaznih podataka Primjer izlaznih podataka a =3 b =4 c=5 s = 6.0 Primjer ulaznih podataka Primjer izlaznih podataka xa = 2 ya = 1 xb = 6 yb = 5 xc = 10 yc = 1 s = 16.0 Primjer ulaznih podataka Primjer izlaznih podataka 845 Za predaju: novčanice od 500 rubalja. - 1 kom. novčanice od 100 rubalja. - 3 kom. novčanice od 50 rubalja. – 0 kom. novčanice od 10 rubalja - 4 stvari. Primjer ulaznih podataka Primjer izlaznih podataka ZELENO LIŠĆE PUŠE ZELENO LIŠĆE PUŠE ZELENO LIŠĆE ZELENO PUŠE LIŠĆE PUŠE ZELENO PUŠE ZELENO LIŠĆE PUŠE LIŠĆE Primjer ulaznih podataka Primjer izlaznih podataka 13 257 Sada je 3 sata 40 minuta.

| § 3.3. Programiranje linearnog algoritma

Lekcija 26
§ 3.3. Programiranje linearnog algoritma

Ključne riječi:

Pravi tip podataka
cjelobrojni tip podataka
karakterni tip podataka
vrsta podataka string
boolean tip podataka

Najjednostavniji su programi koji implementiraju linearne algoritme. Svi operatori koje sadrže izvršavaju se sekvencijalno, jedan za drugim.

Kod programiranja linearnih algoritama detaljnije ćemo razmotriti cjelobrojne, logičke, znakovne i nizovne tipove podataka.

3.3.1. Numerički tipovi podataka

Već ste upoznati s osnovnim tipovima numeričkih podataka cijeli broj I stvaran. Na njih se odnose standardne funkcije od kojih su neke dane u tablici. 3.3.

Tablica 3.3

Standardne Pascal funkcije

Istražimo kako funkcioniraju funkcije krug, int I fras, primjenjujući ih na neke stvarne x. Odgovarajući program će izgledati ovako:

Pokrenite program nekoliko puta za svaki x ∈ (10.2; 10.8; -10.2; -10.8). Što nam možete reći o vrsti rezultata svake od ovih funkcija?

3.3.2. Cjelobrojni tip podataka

Nad cijelim brojevima u jeziku Pascal izvode se sljedeće operacije: zbrajanje (+), oduzimanje (-), množenje (*), dobivanje cjelobrojnog kvocijenta (div), dobivanje cjelobrojnog ostatka (mod) i dijeljenje (/). Rezultati prvih pet operacija su cijeli brojevi. Rezultat operacije dijeljenja može biti realan broj.

Razmotrimo primjer korištenja operacija div i mod pisanjem programa u Pascalu za pronalaženje zbroja znamenki prirodnog troznamenkastog broja unesenog s tipkovnice.

Koristimo se činjenicom da se pozitivan troznamenkasti broj može prikazati kao sljedeći zbroj: x - a*100 + 6*10 + c, gdje su a, b, c znamenke broja.

Koliki je zbroj znamenki broja 123? A brojke -123? Odgovaraju li vaši rezultati rezultatima programa? Kako se greška u programu može objasniti i ispraviti?

3.3.3. Znakovni i string tipovi podataka

Vrijednost znakovne vrijednosti (char type) u jeziku Pascal je bilo koji od znakova koji se mogu dobiti na ekranu pritiskom na jednu od tipki ili kombinacije tipki na tipkovnici, kao i neki drugi znakovi, uključujući i nevidljive . Skup takvih simbola sastoji se od 256 elemenata, od kojih je svakom, prema korištenoj kodnoj tablici, dodijeljen kod - broj od 0 do 255.

Simboli koji odgovaraju prva 32 koda su kontrolni, a ostali su prikazani. Prikazani znakovi također uključuju razmak, kod 32.

Interpunkcijski znakovi, znakovi aritmetičkih operacija, brojevi, velika i mala latinična slova odgovaraju kodovima od 33 do 127. Slova nacionalne abecede odgovaraju kodovima od brojeva 128 nadalje.

U tekstu programa, konstanta tipa znaka može se specificirati tako da se bilo koji predstavljeni znak stavi u apostrofe: “5”, “B”, “*”.

Ako se vrijednost znakovne varijable čita s tipkovnice, tada je treba upisati bez apostrofa.

Da biste pronašli kod simbola, koristite funkciju ord, gdje je simbol naveden kao parametar.

Da biste prepoznali simbol prema kodu, koristite funkciju chr, gdje je kod simbola naveden kao parametar.

Vrijednost string vrijednosti (string type) proizvoljan je niz znakova omeđenih apostrofima. U Pascalu (kao u algoritamskom jeziku), nizovi se mogu spajati.

Primjer. Napišimo program u Pascalu u kojem se za slovo uneseno s tipkovnice njegov kod prikazuje na ekranu. Zatim se na ekranu prikazuje redak koji je niz od tri slova upotrijebljene tablice kodova: slovo koje prethodi izvornom; izvorno pismo; slova nakon izvornog.


3.3.4, Boolean tip podataka

Kao što znate, vrijednosti logičkog tipa imaju samo dvije vrijednosti; u Pascalu je lažno I pravi. Te su konstante definirane tako da je false< true.

Booleove vrijednosti dobivaju se izvođenjem operacija usporedbe na numeričkim, znakovnim, nizovima i logičkim izrazima. Stoga se u Pascalu logičkoj varijabli može dodijeliti rezultat operacije usporedbe.

Primjer. Napišimo program koji utvrđuje istinitost izjave “Broj n je paran” za proizvoljan cijeli broj n.

Neka ans je booleova varijabla, a n je cjelobrojna varijabla. Zatim, kao rezultat izvršavanja operatora dodjele

ans:=n mod 2 = 0

varijabla ans bit će dodijeljena vrijednost pravi za bilo koji parni n i lažno inače.

Logičkim varijablama mogu se dodijeliti vrijednosti logičkih izraza konstruiranih korištenjem logičkih funkcija koje poznajete i, ili, ne, koje su u Pascalu označene na odgovarajući način i, ili, ne.

Primjer. Napišimo program koji utvrđuje istinitost tvrdnje “Trokut stranica duljina a, b, c je jednakokračan” za proizvoljne cijele brojeve a, b, c.


NAJVAŽNIJI

Pascal jezik koristi realne, integer, znakove, nizove, logičke i druge tipove podataka. Za njih su definirane odgovarajuće operacije i funkcije.

Pitanja i zadaci

1. Pročitajte prezentacijske materijale za odlomak koji se nalaze u elektroničkom prilogu udžbenika. Koristite ove materijale kada pripremate odgovore na pitanja i rješavate zadatke.

2. Za zadani x, izračunajte y pomoću formule y = x 3 + 2,5x 2 - x + 1.

pri čemu:

a) radnja potenciranja je zabranjena;
b) u jednom operatoru dodjele ne možete koristiti više od jedne aritmetičke operacije (zbrajanje, množenje, oduzimanje);
c) u programu se ne može koristiti više od pet operatora dodjele.

Trag : Pretvorite izraz u sljedeći oblik: y = ((x + 2,5)x - 1)x + 1.

3. Prema zadanim koordinatama točaka A i. B Izračunaj duljinu dužine AB.

Trag . Udaljenost d između točaka A (x a, y a) i B (x b, y b) izražava se formulom.

4. Poznate su duljine stranica trokuta a, b, c. Napišite program za izračunavanje površine ovog trokuta.

5. Poznate su koordinate vrhova A, B, C trokuta. Napišite program za izračunavanje površine ovog trokuta.

6. Ako se iznos poreza izračunava u rubljama i kopejkama, tada ga porezna služba zaokružuje na najbližu rublju (do 50 kopejki - s manjkom, preko 50 kopejki (uključujući 50) - s viškom). Pomoću računala unesite točan iznos poreza i prikažite koliko dugujete.

7. Istražite rad slučajne funkcije pokretanjem programa mnogo puta:

Kako možete dobiti slučajni broj iz intervala (0, x)?

Kako možete dobiti slučajni broj iz intervala (0, x]?

Kako možete dobiti slučajni broj iz intervala (n, x + n)?

8. Jedno poduzeće izdalo je tri kategorije srećki: za mlade, za odrasle i za umirovljenike. Brojevi ulaznica za svaku kategoriju kreću se od:

za mlade - od 1 do 100;
za odrasle - od 101 do 200;
za umirovljenike - od 201 do 250.

Pomoću računala nasumično odaberite srećku u svakoj kategoriji.

9. Napišite program u Pascalu koji za proizvoljan dvoznamenkasti prirodni broj određuje:

a) zbroj i umnožak njegovih znamenki;
b) broj nastao preslagivanjem znamenki izvornog broja.

10. Napišite program u Pascalu koji implementira algoritam za blagajnika da kupcu da sitniš sa najmanjim mogućim brojem novčanica od 500 (k500), 100 (klOO), 50 (k50) i 10 (klO) rubalja .

11. Dolazak k- druga u danu. Razviti program koji na temelju inputa k-sekunda u danu određuje koliko će cijelih sati h i cijele minute m prošlo je od početka dana. Na primjer, ako k= 13 257 = 3 3600 + 40 60 + 57, tada h= 3 i m = 40.

Prikaži izraz:

To su... sati... minute

.

Umjesto elipsa, program bi trebao ispisivati ​​hum vrijednosti, odvajajući ih od riječi s točno jednim razmakom.

12. Napišite program u Pascalu koji izračunava zbroj slovnih kodova u riječi “BYTE”.

13. Napišite program u Pascalu koji generira i prikazuje niz znakova čiji su kodovi 66, 69, 71, 73, 78.

14. Razvijte program koji traži tri vrijednosti niza - povezani pridjev, imenicu i glagol - i zatim ispisuje sve moguće izraze koristeći unesene riječi.

15. Zadane su vrijednosti cjelobrojnih varijabli: a = 10, b = 20. Kolika će biti vrijednost logičke varijable? rez nakon izvršenja operacije dodjele?

a)rez:=(a=10) ili (b>10)
b)rez: = (a>5) i (b>5) i (a<20) and (b<30)
c)rez: = (ne(a<15)) or (b>20)

16. Napišite program koji ulazi pravi, ako je izjava istinita, i lažno inače:
a) zbroj znamenki troznamenkastog broja x je paran broj;
b) trokut sa stranicama a, b, c je svestran.

Izračunati

Zadatak 2 (program 1_2)

    K je druga u danu. Odredite koliko je cijelih sati (h) i cijelih minuta (m) i sekundi (s) prošlo do tog trenutka.

    Odredite površinu trapeza s bazama a, b, visinom h i volumenom krnjeg stošca, ako a, b smatramo površinama baza.

3. Odrediti koordinate težišta triju materijalnih točaka s masama m 1,m 2,m 3 i koordinatama (x 1,y 1), (x 2,y 2), (x 3,y 3).

4. Izračunajte volumen lopte i površinu kruga za zadani radijus R i pronađite odnos između njih.

5. Izračunaj medijane trokuta sa stranicama a, b, c.

6. Izračunajte oplošje i obujam stošca zadanih polumjera i visine h.

7. Koristeći zadani radijus, pronađite volumen lopte i površinu.

8. Izračunajte sekundu u danu kada su kazaljke na h sati, m minuta i s sekundi, kao i kut (u stupnjevima) između položaja kazaljke na satu na početku dana i njenog položaja na određenom trenutak.

9. Unesite dvoznamenkasti cijeli broj x<15. Написать программу перевода его в восьмеричную систему счисления.

10. Unesite koordinate dviju točaka (x 1, y 1), (x 2, y 2). Pronađite udaljenost između njih.

laboratorij 2

Programiranje razgranatih algoritama. Operatori prijenosa kontrole

Struktura operatora prijenosa uvjetne kontrole:

ako (<выражение>) <оператор 1> drugo <оператор 2>;

(If) (drugo) - ključne riječi,

Gdje<условие>je proizvoljni Booleov izraz koji može uzeti dvije vrijednosti: istina (TRUE) i laž (FALSE);

<оператор>- svaki SI operator završava točkom i zarezom.

Kratki oblik uvjetne izjave:

ako (<выражение>) <оператор>;

Operator bezuvjetnog skoka: ići <идентификатор-метка>;

Oznaka je identifikator. Oznaka se postavlja ispred C/C++ naredbe na koju se granate i odvojena je dvotočkom (:).

Primjer 1. Napravite program za izračun osnovne plaće prema sljedećem pravilu: ako je radno iskustvo zaposlenika manje od tri godine, tada je plaća 100 dolara, s radnim iskustvom od tri do 5 godina - 150 dolara, preko 5 godina plaća se povećava svake godine za 10 dolara, a s više od 20 godina iskustva iznosi 300 dolara.

Kako bismo programirali rješenje ovog problema, definiramo matematičku formulaciju problema:

100 ako je ST< 3;

ZP= 150, ako je 3 ≤ST  5;

150+ (ST -5)*10 ako je 5< ST≤ 20;

300 ako je ST > 20;

#uključi

#uključi

void main()

( int ST; //ST- iskustvo (bajt (cijeli broj) bez predznaka)

plovak ZP; //ZP- plaća (promjenjivi tip)

printf("\nUnesite iskustvo");

scanf("%d",&ST);

ako (ST<3) ZP = 100;

inače ako (ST<5) ZP = 150;

inače ako (ST>=20) ZP=300;

drugo ZP=150+(ST- 5)*10;

printf("\nPlaća = %10,2f$\n",ZP);

Operator odabira sklopka omogućuje, ovisno o vrijednosti varijable ili izraza (ključ za odabir), izvršavanje određenih operatora označenih odgovarajućim konstantama.

Struktura operatora:

sklopka (<выражение>)

slučaj<константа 1>: <группа операторов 1>;

slučaj<константа 2>: <группа операторов 2>;

slučaj<константа N>: <группа операторов N>

zadano: <операторы>;

}

Gdje<выражение>-izraz (varijabla) bilo kojeg ordinalnog tipa;

<константа>- konstanta istog tipa kao<выражение>;

<оператор>- proizvoljni C/C++ operator.

Primjer 2. Ispiši naziv oblika ovisno o broju kutova (trokut, četverokut, peterokut, šesterokut, mnogokut).

Varijanta implementacije zadatka pomoću operatora odabira predstavljena je CA (sl. 2,b) i sljedećim programom:

#uključi

#uključi

void main()

{

int T; // T – broj kutova

clrscr(); // očisti ekran

printf("Unesite broj kutova");

scanf("%d",&T);

prekidač (T)

slučaj 1: slučaj 2: printf("Ovo nije brojka\n"); pauza;

slučaj 3: printf("Sa %d kutova - trokut\n ", T); pauza;

slučaj 4: printf ("Sa %d kutova - četverokut\n ", T); pauza;

slučaj 5: printf("Sa %d kutova - peterokut\n ", T); pauza;

slučaj 6: printf("Sa %d kutova - šesterokut\n ", T); pauza;

zadano : printf("Sa %d kutova - poligon\n ", T);

Vježba 1 (program 2_1)

Izračunajte vrijednost funkcije ovisno o intervalu u koji pada argument unesen s tipkovnice:

1. Za , a t 2 ln t na 1
,

gdje je a=-0,5,b=2 z = 1 na t<1,

e a t cos b t za t>2,

2. Za x ,
na x2,

gdje je a=2,3 f = x na 0,3< x  2,

cos(x-a) u x
,

3. Za x , (a+b)/(e x +cosx) pri 0  x2,3,

gdje je a=-2,7,b=-0,27 z = (a+b)/(x+1) na 2,3 x5,

e x +sinx na 7
,

4. Za i , a i 4 + b i na i< 10,

gdje je a=2,2,b=0,3. y = tan(i + 0,5) pri i = 10,

e 2i +
za i >10,

5. Za x , x 2 - 7/x 2 na x<1.3,

gdje je a=1,5 y = ax 3 + 7
na 1,3  x3,

lg(x + 7
) na x
,

6. Za [-1.4],
na t<0.1,

gdje je a=2,1,b=0,37. z = pri + b pri 0,1 t 2,

na t
,

7. Za x , a e sin x +2,5 na x<0.3,

gdje je a=1,5. y = e cos x + a pri 0,3 x<4,

(sin x)/ (a + e x) pri x  4,

8. Za x , y = a/x + b x 2 - c u x
,

gdje je a=1,8, b=-0,5, c=3,5 (a + bx)/
pri x>1,2,

9.Za t , t
kod t>a,

gdje je a=2,5 z = t sin a t pri t=a,

e -at cos a t at t

10. Za x , e - bx sin b x na x<2.3,

gdje je a=1,b=3. y= cos bx na 2.3
,

e -ax cos b x na x

11.Za t , a t 2 – b
na t

gdje je a=1,3,b=6,5 z= a - b na a

a t 2/3 -
na t>b,

12. Za x , |e -2x sin bx| za x >1,

gdje je b=-2,9 y = cos bx pri x = 1,

e -x cos bx u x< 1,

13. Za x sin (cos a x) za x >1,

gdje je a=-0,8 z = tan ax pri x = 1,

a 2 x na x< 1,

14. Za x , ln bx - 1/(bx+1) u x< 1.3,

gdje je b=1,3. y = bx + 1 na 1,3  x  1,7,

ln bx +1/(bx+1) za x > 1,7,

15. Za x [-1,1], sjekira 2 +bx 2/3 na x<0.1,

gdje je a=2,5,b=-0,9. z= a x 2 pri x=0,1,

b x 2/3 pri x>0,1.

16. Unesite koordinate točke (x, y). Ispišite u kojem se kvadrantu ili koordinatnoj osi nalazi ova točka.

17. Unesite polumjere R 1, R 2 i visinu. Izračunaj obujam krnjeg stošca:
, gdje je S površina baza. Ako je R 1 = R 2 - volumen i površina cilindra, ako je R 1 = 0 ili R 2 = 0 - volumen (hπr 2) i površina πr(
) površina stošca.

18. Unesite broj s tipkovnice. Odredi kojem brojevnom sustavu može pripadati.

19. Unesite broj. Odredi je li djeljiv s dva, tri ili pet.

20. Unesite a, b, h. Ako je h=0, izračunajte površinu pravokutnika; za a = b, pronađite površinu kvadrata; u suprotnom, izračunajte površinu trapeza.

Zadatak 2 (program 2_2)

1. Odredite ostatak dijeljenja s osam upisanog broja x i napišite oktalnu znamenku riječima.

2. Na temelju broja unesenog s tipkovnice upišite naziv ovog broja.

3. Unesite broj k (1..30) s tipkovnice. Odredi kojem danu u tjednu odgovara ako je prvi broj ponedjeljak.

4. Unesite datum i broj mjeseca. Upišite datum riječima.

5. Prolazi k sekunda dana. Izračunajte koliko je sati i punih minuta prošlo do ovog trenutka, slažući se sa značenjem riječi (sat, sati, sati, minuta, minute, minute).

6. Ovisno o broju (N) vrste figure, organizirati unos potrebnih podataka i izračunati za N = 1 - površina kruga, N = 2 - volumen lopte (4 /3πR 3), N = 3 - volumen cilindra, N = 4 - površina kugle je 4πr 2.

7. Unesite broj N (0 ≤ N ≤ 15). Odredite i ispišite heksadecimalnu znamenku koja mu odgovara.

8. Za cijeli broj K (1...99), ispišite frazu "Imam K godina" za određene vrijednosti K, zamijenite riječ "godina" s riječju "godina" ili "godina" .

9. Ovisno o broju (N) vrste figure, organizirajte unos potrebnih podataka i izračunajte za N = 1 - površinu pravokutnika, za N = 2 - površinu paralelograma, za N = 3 - površina trapeza 1/2(a+b)h . U potonjem slučaju ispišite je li trapez paralelogram ili romb.

10. Pretvorite broj 0 ≤ x ≤ 31 u heksadekadski brojevni sustav.

11. Ispiši riječima ostatak bilo kojeg cijelog broja podijeljen s pet.

12. Unesenim brojem ispišite željenu boju u dugi.

13. Osmislite program koji pokazuje da ako je zbroj znamenki dvoznamenkastog broja višekratnik tri, onda je sam broj djeljiv s tri bez ostatka.

14. Razviti program koji dokazuje da je kvadrat dvoznamenkastog broja k5 (zadnja znamenka 5) jednak k * ( k + 1) * 100 + 25 (tj. može se dobiti množenjem vodeće znamenke k do sljedećeg po redu i dodajte “25”). Na primjer, 35 * 11 = 3 * 4 * 100 + 25.

Za zadatak 2 broj opcije određuje se ostatkom dijeljenja pojedine opcije s brojem 12.

laboratorij 3

Ključne riječi:

  • pravi tip podataka
  • cjelobrojni tip podataka
  • karakterni tip podataka
  • vrsta podataka string
  • boolean tip podataka

Najjednostavniji su programi koji implementiraju linearne algoritme. Svi operatori koje sadrže izvršavaju se sekvencijalno, jedan za drugim.

Kod programiranja linearnih algoritama detaljnije ćemo razmotriti cjelobrojne, logičke, znakovne i nizovne tipove podataka.

4.4.1. Numerički tipovi podataka

Već ste upoznati s osnovnim numeričkim tipovima podataka integer i real. Na njih se odnose standardne funkcije od kojih su neke dane u tablici. 4.2.

Tablica 4.2
Standardne Pascal funkcije


Istražimo djelovanje funkcija round, int i frac primjenom na neki realni x. Odgovarajući program će izgledati ovako:

Pokrenite program nekoliko puta za x=(10,2; 10,8; -10,2; -10,8). Što nam možete reći o vrsti rezultata svake od ovih funkcija?

4.4.2. Cjelobrojni tip podataka

Nad cijelim brojevima u jeziku Pascal izvode se sljedeće operacije: zbrajanje (+), oduzimanje (-), množenje (*), dobivanje cjelobrojnog kvocijenta (div), dobivanje cjelobrojnog ostatka (mod) i dijeljenje (/). Rezultati prvih pet operacija su cijeli brojevi. Rezultat operacije dijeljenja može biti realan broj.

Razmotrimo primjer korištenja operacija div i mod pisanjem programa u Pascalu za pronalaženje zbroja znamenki troznamenkastog cijelog broja unesenog s tipkovnice.

Koristimo se činjenicom da se troznamenkasti broj može prikazati kao sljedeći zbroj: x = a 100 + b 10 + c, gdje su a, b, c znamenke broja.

4.4.3. Znakovni i nizovi tipova podataka

Vrijednost znakovne vrijednosti (char type) u jeziku Pascal je bilo koji od znakova koji se mogu dobiti na ekranu pritiskom na jednu od tipki ili kombinacijom tipki, kao i neki drugi znakovi, uključujući i nevidljive. Skup takvih simbola sastoji se od 256 elemenata, od kojih je svakom, u skladu s korištenom kodnom tablicom, dodijeljen kod - broj od 0 do 255.

Simboli koji odgovaraju prva 32 koda su kontrolni, a ostali su prikazani. Prikazani znakovi također uključuju razmak, kod 32.

Interpunkcijski znakovi, znakovi aritmetičkih operacija, brojevi, velika i mala latinična slova odgovaraju kodovima od 33 do 127. Slova nacionalne abecede odgovaraju kodovima od brojeva 128 nadalje.

U tekstu programa, konstanta tipa znaka može se specificirati tako da se bilo koji predstavljeni znak stavi u apostrofe: “5”, “B”, “*”.

Ako se vrijednost znakovne varijable čita s tipkovnice, tada je treba upisati bez apostrofa.

Da biste pronašli kod simbola, koristite funkciju ord, gdje je simbol naveden kao parametar.

Da biste prepoznali simbol prema kodu, koristite funkciju chr, gdje je kod simbola naveden kao parametar.

Vrijednost string vrijednosti (string type) proizvoljan je niz znakova omeđenih apostrofima. U Pascalu (kao u algoritamskom jeziku), nizovi se mogu spajati.

Primjer. Napišimo program u Pascalu u kojem se za slovo uneseno s tipkovnice njegov kod prikazuje na ekranu. Zatim se na ekranu prikazuje redak koji je niz od tri slova upotrijebljene tablice kodova: slovo koje prethodi izvornom; izvorno pismo; slova nakon izvornog.

4.4.4. Booleov tip podataka

Kao što znate, vrijednosti logičkog tipa imaju samo dvije vrijednosti; u Pascalu su lažni i istiniti. Te su konstante definirane tako da je false< true.

Booleove vrijednosti dobivaju se izvođenjem operacija usporedbe na numeričkim, znakovnim, nizovima i logičkim izrazima. Stoga se u Pascalu logičkoj varijabli može dodijeliti rezultat operacije usporedbe.

Primjer. Napišimo program koji utvrđuje istinitost izjave “Broj n je paran” za proizvoljan cijeli broj n.

Neka je ans booleova varijabla, a n cjelobrojna varijabla. Zatim, kao rezultat izvršavanja operatora dodjele

varijabli ans bit će dodijeljena vrijednost true za svaki parni n i false inače.


Logičkim varijablama mogu se dodijeliti vrijednosti logičkih izraza konstruiranih pomoću logičkih funkcija koje poznajete i, ili, ne, koje su u Pascalu označene redom i, ili, ne.

Primjer. Napišimo program koji utvrđuje istinitost tvrdnje “Trokut stranica duljina a, b, c je jednakokračan” za proizvoljne cijele brojeve a, b, c.

Najvažniji

Pascal jezik koristi realne, integer, znakove, nizove, logičke i druge tipove podataka. Za njih su definirane odgovarajuće operacije i funkcije.

Pitanja i zadaci


Najbolji članci na temu