Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Programi
  • Izrada časa programiranja linearnih algoritama. Izrada lekcije programiranje linearnih algoritama Određuje se k i sekunde dana

Izrada časa programiranja linearnih algoritama. Izrada lekcije programiranje linearnih algoritama Određuje se k i sekunde dana

Opis prezentacije na pojedinačnim slajdovima:

1 slajd

Opis slajda:

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

2 slajd

Opis slajda:

Za prikaz rezultata u Pascalu koristi se operator: Šta od sljedećeg nije uključeno u Pascal alfabet? mala i velika latinična slova podvlaka Koji niz znakova se može koristiti kao ime u Pascalu? print begin readln SLJEDEĆE pomoćne riječi ruska mala i velika slova _mas maS1 d2 2d _mas maS1 d2 2d SLJEDEĆA napiši napiši ruska mala i velika slova

3 slajd

Opis slajda:

Odaberite pravi odeljak deklaracije varijable Početak programa Zaglavlje programa Dodjela Izlazna izjava Operator Ulazna izjava Kraj programa Tip cijelih brojeva Vrsta realnih vrijednosti readln end program begin:= var integer real writeln var begin:= real program writeln end readln

4 slajd

Opis slajda:

Napravite blok dijagram za sabiranje brojeva A + B, unesenih sa tastature START Ulaz A, B S \u003d A + B IZLAZ 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čunajte obim i površinu kruga ako je r=5,4 writeln("c=", c:6:4); writeln("s=", s:6:4) kraj. Rezultat programa: write("Unesite r>>"); readln(r); program n_1; const pi=3,14; var r, c, s: real; početak r:=5,4; c:=2*pi*r; s:=pi*r*r; Poboljšani program Rezultat pokretanja programa: Turbo Pascal Verzija 7.0 c =33.9120 s =91.5624 Turbo Pascal Uersion 7.0 Izračunavanje obima 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) Modulx cijeli broj, real Isto kao sqr(x) argument Squarex cijeli broj, real Isto kao sqrt(x) argument Kvadratni korijen odx cijeli broj, realno realno okruglo(x) Zaokruži x na najbliži cijeli broj realni frac(x) Cijeli broj x real int(x) Razlomak x realni slučajni slučajni broj od 0 do 1 - stvarni slučajni(x) Slučajni broj od 0 do x cijeli broj

7 slajd

Opis slajda:

Operacije div i mod program n_4; var x, a, b, c, s: cijeli broj; begin writeln ("Pronalaženje zbira cifara trocifrenog broja"); write("Unesite početni 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. Trocifreni broj se može predstaviti kao sljedeći zbir: x = a 100 + b 10 + c, gdje su a, b, c cifre broja. Program za pronalaženje zbira cifara trocifrenog celog broja unetog sa tastature.

8 slajd

Opis slajda:

Tipovi podataka znakova i nizova Funkcija ord pretvara slovo u njegov numerički kod. Simboli su sva slova i ikone koje se nalaze na tastaturi. Da biste unijeli znakovne varijable u program, morate navesti tip podataka karaktera char za njih. Chr funkcija pretvara brojčani kod znakova u sam znak. Vrijednost string vrijednosti (tip string) je proizvoljan niz znakova zatvorenih u apostrofe. W chr 87 ord W % 37 % 4 52 4 S 83 S var c: string c:= chr(52)+chr(37) sa 4%

9 slajd

Opis slajda:

Program za tipove podataka znakova i nizova n_5; var a: char; kod: cijeli broj; b:string begin writeln("Kod i string"); write("Unesite početno slovo>>"); readln(a); kod:=ord(a); b:=chr(kod–1)+a+chr(kod+1); writeln("Šifra slova ", a, "-", kod); writeln("String: ", b) kraj. Prikazivanje koda slova unesenog sa tastature Prikazivanje niza od tri slova na ekranu. Šta?

10 slajd

Opis slajda:

Ispitivanje funkcija round, int i frac Pokrenite program nekoliko puta za x (10.2; 10.8; -10.2; -10.8). Koji će biti tip rezultata svake od ovih funkcija? program n_3; varx: real; begin writeln("Istraživanje funkcija round, int, frac"); write("Unesite x>>"); readln(x); writeln("Okruglo - ", okruglo(x)); writeln("Cjelobrojni dio - ", int(x)); writeln ("Razlomak je ", frac(x)) kraj. ?

11 slajd

Opis slajda:

START Ulaz x1,x2,y1,y2 IZLAZ S END dužina programa; kraj. var x1,x2,y1,y2: cijeli broj; započeti d=sqrt(sqr(x2-x1))+sqrt(y2-y1)); writeln('d=', d); write("UNESI KOORDINATU X1= "); readln(X1); write("Unesi KOORDINATU Y1= "); readln(Y1); write("UNESI KOORDINATU X2= "); readln(X2); write("ENTER Y2 COORDINATE= "); readln(Y2);

12 slajd

Opis slajda:

Pitanja i zadaci Za dati x izračunajte y pomoću formule y = x3 + 2,5x2 - x +1. U ovom slučaju: a) operacija podizanja na stepen je zabranjena; b) u jednom operatoru dodjeljivanja ne možete koristiti više od jedne aritmetičke operacije (sabiranje, množenje, oduzimanje); c) ne može se koristiti više od pet operatora dodjeljivanja u programu. Savjet: transformirajte izraz u sljedeći oblik: y =((x + 2.5)x -1)x +1. Date koordinate tačaka A i B, izračunajte dužinu segmenta AB. Dužine stranica trougla a, b, c su poznate. Napišite program za izračunavanje površine ovog trougla. Koordinate vrhova A, B, C trougla su poznate. Napišite program za izračunavanje površine ovog trougla. Ako se iznos poreza izračunava u rubljama i kopejkama, onda ga poreska služba zaokružuje na najbližu rublju (do 50 kopejki - sa manjkom, preko 50 kopejki (uključujući 50) - sa viškom). Koristite računar da unesete tačan iznos poreza i prikažete koliko treba platiti. Istražite rad nasumične funkcije tako što ćete više puta izvoditi program: program n_8; var x, n: cijeli broj; begin writeln("Istraživanje nasumične funkcije"); randomize (*za generisanje različitih slučajnih brojeva svaki put kada se program pokrene*); write("Unesite x>>"); readln(x); write("Unesite n>>"); readln(n); writeln("random(", x, ")=", random(x)); writeln("random(", x, ")+", n, "=", random(x)+n) kraj. Kako možete dobiti slučajni broj iz intervala (0; x)? Kako mogu dobiti nasumični broj iz intervala (0; x]? Kako mogu dobiti slučajni broj iz intervala (n; x + n)? Jedna kompanija je izdala lutriju tri kategorije: za mlade, za odrasle i za Brojevi ulaznica za svaku kategoriju su u granicama: za mlade - od 1 do 100, za odrasle - od 101 do 200, za starije - od 201 do 250. Koristeći računar, nasumično odaberite srećku u svaku kategoriju Napišite u Pascalu program koji za proizvoljan dvocifreni broj određuje: a) zbir i proizvod njegovih cifara; b) broj formiran permutacijom cifara originalnog broja. Napišite Pascal program koji izračunava zbir slovnih kodova u riječi BYTE. Napišite program u Pascalu koji ispisuje niz znakova čiji su kodovi 66, 69, 71, 73, 78. Razvijte program koji traži tri vrijednosti niza – pridruženi pridjev, imenicu i glagol – a zatim ispisuje sve moguće fraze koristeći unesene riječi. Date su vrijednosti cjelobrojnih varijabli: a = 10, b = 20. Koja će biti vrijednost logičke varijable rez nakon izvršenja operacije dodjeljivanja? 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 tačno ako je iskaz tačan i netačan u suprotnom: a) zbir cifara trocifrenog broja x je paran broj; b) trougao sa stranicama a, b, c je razmjeran. To je k-ta sekunda dana. Razviti program koji, koristeći unesenu k-tu sekundu dana, određ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 frazu: To je ... sati ... minuta. Umjesto elipsa, program bi trebao ispisati vrijednosti h i m, odvajajući ih od riječi sa tačno jednim razmakom. Napišite Pascal program koji implementira algoritam rada blagajnika, dajući kupcu promjenu(e) s najmanjim brojem novčanica od 500 (k500), 100 (k100), 50 (k50) i 10 (k10) rubalja. Primjer unosa Primjer izlaza xa=2 ya=1 xb= 10 yb= 7 | AB | = 10.0 Primjer ulaza Primjer izlaza a =3 b =4 c=5 s = 6.0 Primjer ulaza Primjer izlaza xa = 2 ya = 1 xb = 6 yb = 5 xc = 10 yc = 1 s = 16.0 Primjer ulaza Primjer izlaza 845 Trebalo bi biti predao: 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 cvjeta, zeleno lišće otvara zeleno lišće Zeleno lišće izlazi zeleno lišće. Listovi otapaju zeleno lišće Zeleno lišće, lišće, zeleni primjer ulaznih podataka, primjer izlazni podaci 13 257 Njegova 3 sata 40 minuta.

| § 3.3. Programiranje linearnih algoritama

Lekcija 26
§ 3.3. Programiranje linearnih algoritama

Ključne riječi:

stvarni tip podataka
cjelobrojni tip podataka
karakterni tip podataka
string tip podataka
boolean tip podataka

Programi koji implementiraju linearne algoritme su najjednostavniji. Svi iskazi u njima se izvršavaju uzastopno, jedan za drugim.

Prilikom programiranja linearnih algoritama, pogledajmo bliže cjelobrojne, logičke, znakovne i nizove tipove podataka.

3.3.1. Numerički tipovi podataka

Već ste upoznati sa osnovnim numeričkim tipovima podataka cijeli broj i pravi. Na njih su primjenjive standardne funkcije, od kojih su neke date u tabeli. 3.3.

Tabela 3.3

Standardne Pascal funkcije

Istraživanje kako funkcioniraju funkcije round, int i frac, primjenjujući ih na neke stvarne X. Odgovarajući program bi izgledao ovako:

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

3.3.2. cjelobrojni tip podataka

Sljedeće operacije se izvode nad cijelim brojevima u Pascalu: sabiranje (+), oduzimanje (-), množenje (*), dobivanje cjelobrojnog količnika (div), dobivanje cjelobrojnog ostatka dijeljenja (mod) i dijeljenje (/). Rezultati prvih pet operacija su cijeli brojevi. Rezultat operacije dijeljenja može biti realan broj.

Razmotrimo primjer korištenja div i mod operacija, pisanja u Pascalu programa za pronalaženje zbira cifara prirodnog trocifrenog broja unesenog s tastature.

Koristimo činjenicu da se pozitivan trocifreni broj može predstaviti kao sljedeći zbir: x - a * 100 + 6 * 10 + c, gdje su a, b, c cifre broja.

Koliki je zbir cifara broja 123? A brojevi -123? Da li se vaši rezultati podudaraju sa rezultatima programa? Kako možete objasniti i popraviti grešku u programu?

3.3.3. Tipovi podataka znakova i nizova

Vrijednost vrijednosti znaka (tip char) u Pascalu je bilo koji od znakova koji se na ekranu može dobiti pritiskom na jedan od tastera ili kombinacije tastera na tastaturi, kao i neki drugi karakteri, uključujući i one nevidljive. Skup takvih simbola sastoji se od 256 elemenata, od kojih je svakom, prema korištenoj tablici kodova, dodijeljen kod - broj od 0 do 255.

Znakovi koji odgovaraju prva 32 koda su kontrolni znakovi, a ostali su znakovi za prikaz. Prikazani znakovi također uključuju razmak koji ima kod 32.

Znakovi interpunkcije, znaci aritmetičkih operacija, brojevi, velika i mala latinična slova odgovaraju kodovima od 33 do 127. Slova nacionalnog alfabeta odgovaraju šiframa sa brojevima 128 i dalje.

U tekstu programa može se specificirati konstanta tipa karaktera tako što se bilo koji prikazani znak stavlja u apostrofe: "5", "B", "*".

Ako se vrijednost karakterne varijable čita sa tastature, onda je treba kucati bez apostrofa.

Da biste pronašli kod karaktera, koristite funkciju ord, gdje je znak zadan kao parametar.

Da biste saznali znak po kod, koristite funkciju chr, gdje je kod karaktera specificiran kao parametar.

Vrijednost string vrijednosti (tip string) je proizvoljan niz znakova zatvorenih u apostrofe. U Pascal-u (kao u algoritamskom jeziku), nizovi se mogu spojiti.

Primjer. Napišimo program u Pascalu, u kojem se za slovo uneseno sa tastature njegov kod prikazuje na ekranu. Zatim se na ekranu prikazuje niz, koji je niz od tri slova korištene kodne tablice: slovo koje prethodi originalnom; početno slovo; pismo koje sledi originalu.


3.3.4, Boolean tip podataka

Kao što znate, logičke vrijednosti uzimaju samo dvije vrijednosti; u Pascalu jeste false i tačno. Ove konstante su definirane tako da je false< true.

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

Primjer. Napišimo program koji utvrđuje istinitost iskaza "Broj n je paran" za proizvoljni cijeli broj n.

Neka ans je logička varijabla i n je cjelobrojna varijabla. Zatim, kao rezultat izvršavanja operatora dodjeljivanja

ans:=n mod 2 = 0

varijabla ans bit će dodijeljena vrijednost tačno za bilo koje parno n i false inače.

Booleovim varijablama se mogu dodijeliti vrijednosti logičkih izraza izgrađenih korištenjem logičkih funkcija koje su vam poznate i, ili, ne, koje su u skladu s tim označene u Pascalu i, ili, ne.

Primjer. Napišimo program koji utvrđuje istinitost tvrdnje "Trougao sa dužinama stranica a, b, c je jednakokračan" za proizvoljne cijele brojeve a, b, c.


NAJVAŽNIJI

Pascal jezik koristi realne, cjelobrojne, znakovne, stringove, logičke i druge tipove podataka. Za njih su definirane odgovarajuće operacije i funkcije.

Pitanja i zadaci

1. Upoznajte se sa materijalom za prezentaciju paragrafa koji se nalazi u elektronskom dodatku udžbenika. Koristite ove materijale kada pripremate odgovore na pitanja i ispunjavate zadatke.

2. Za dati x, izračunajte y koristeći formulu y = x 3 + 2,5x 2 - x + 1.

pri čemu:

a) operacija podizanja na stepen je zabranjena;
b) u jednom operatoru dodjeljivanja ne možete koristiti više od jedne aritmetičke operacije (sabiranje, množenje, oduzimanje);
c) ne može se koristiti više od pet operatora dodjeljivanja u programu.

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

3. Prema datim koordinatama tačaka A i. Izračunajte dužinu segmenta AB.

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

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

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

6. Ako se iznos poreza izračunava u rubljama i kopejkama, onda ga poreska služba zaokružuje na najbližu rublju (do 50 kopejki - sa manjkom, preko 50 kopejki (uključujući 50) - sa viškom). Koristite računar da unesete tačan iznos poreza i prikažete koliko treba platiti.

7. Istražite rad nasumične 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. Jedna kompanija je izdala srećke tri kategorije: za mlade, za odrasle i za penzionere. Brojevi ulaznica za svaku kategoriju su unutar:

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

Koristite računar da nasumično odaberete srećku u svakoj kategoriji.

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

a) zbir i proizvod njegovih cifara;
b) broj formiran permutacijom cifara originalnog broja.

10. Napisati program na Pascalu koji implementira algoritam blagajnika koji kupcu daje sitniš(e) u što manjem broju novčanica od 500 (k500), 100 (klOO), 50 (k50) i 10 (klO) rubalja .

11. Ide k-th sekunda dana. Razviti program koji, prema unosu k-ta sekunda dana određuje koliko cijelih sati h i čitavih minuta m prošlo od početka dana. Na primjer, ako k= 13 257 = 3 3600 + 40 60 + 57, onda h= 3 i m = 40.

Prikaži frazu:

To je ... sati ... minuta

.

Umjesto elipsa, program bi trebao ispisati hum vrijednosti, odvajajući ih od riječi sa tačno jednim razmakom.

12. Napišite program u Pascalu koji izračunava zbir slovnih kodova u riječi "BYTE".

13. Napišite Pascal program koji generiše i prikazuje niz znakova čiji su kodovi 66, 69, 71, 73, 78.

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

15. Date 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)
c) rez: = (ne (a<15)) or (b>20)

16. Napišite program koji uvodi tačno ako je izjava tačna, i false inače:
a) zbir cifara trocifrenog broja X je paran broj;
b) trougao sa stranicama a, b, c je svestran.

Izračunati

Zadatak 2 (program 1_2)

    K sekunda je dana. Odredite koliko je cijelih sati (h) i cijelih minuta (m) i sekundi (s) prošlo do ovog trenutka.

    Odredite površinu trapeza sa osnovama a, b, visinom h i zapreminom krnjeg konusa, ako uzmemo u obzir a, b - površine osnova.

3. Odrediti koordinate težišta tri materijalne tačke sa 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 dati polumjer R, pronađite omjer između njih.

5. Izračunajte medijane trougla na datim stranicama a, b, c.

6. Izračunajte površinu i zapreminu konusa za date poluprečnike i visinu h.

7. Za dati polumjer pronađite zapreminu lopte i površinu.

8. Izračunajte koja je sekunda u danu na položaju kazaljki u h sati, m minuta i s sekundi, kao i ugao (u stepenima) između položaja kazaljke sata na početku dana i njenog položaja u navedenom trenutku.

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

10. Unesite koordinate dvije tačke (x 1, y 1), (x 2, y 2). Pronađite udaljenost između njih.

Laboratorija 2

Programiranje razgranatih algoritama. Izjave o prijenosu kontrole

Struktura izjave o prijenosu uvjetne kontrole:

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

(ako) (inače) - ključne riječi,

gdje<условие>je proizvoljan logički izraz koji može imati dvije vrijednosti: true (TRUE) i false (FALSE);

<оператор>- bilo koji operator jezika C, završava se tačkom i zarezom.

Kratki oblik uslovnog operatora:

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

Operator bezuslovnog skoka: idi <идентификатор-метка>;

Oznaka je identifikator. Oznaka se postavlja ispred C/C++ naredbe na koju se vrši skok i odvaja se dvotočkom (:).

Primjer 1. Napraviti program za obračun osnovne plate prema sljedećem pravilu: ako je radno iskustvo zaposlenog manje od tri godine, onda je plata 100 dolara, sa radnim iskustvom od tri do 5 godina - 150 dolara, preko 5 godina plata povećava se svake godine za 10 dolara, a sa iskustvom većim od 20 godina iznosi 300 dolara.

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

100 ako ST< 3;

ZP= 150 ako je 3 ≤ST  5;

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

300 ako je ST > 20;

#include

#include

void main()

( int ST; //ST- iskustvo (bajt (cijeli) neoznačeni tip)

floatZP; //ZP- plata (pokretni tip)

printf("\n Unesite staž");

scanf("%d",&ST);

ako (ST<3) ZP = 100;

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

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

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

printf ("\n Plaća = %10.2f$\n",ZP);

Odaberite izjavu prekidač dozvoljava, ovisno o vrijednosti bilo koje varijable ili izraza (ključ za odabir), da se izvrše određeni operatori označeni odgovarajućim konstantama.

Struktura operatera:

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

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

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

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

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

}

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

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

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

Primer 2. Ispisati naziv figure u zavisnosti od broja uglova (trougao, četvorougao, petougao, šestougao, poligon).

Varijanta implementacije zadatka pomoću operatora selekcije predstavljena je od strane SA (slika 2b) i sljedećeg programa:

#include

#include

void main()

{

int T; // T je broj uglova

clrscr(); // očisti ekran

printf("Unesite broj uglova");

scanf("%d",&T);

prekidač (T)

slučaj 1: slučaj 2: printf ("Ovo nije oblik\n "); break;

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

slučaj 4: printf ("Sa %d uglova - quad\n ", T); break;

slučaj 5: printf ("Sa %d uglova - pentagon\n ", T); break;

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

default : printf ("Sa %d uglova - poligon\n ", T);

Vježba 1 (program 2_1)

Izračunajte vrijednost funkcije ovisno o intervalu u kojem pada argument unet s tipkovnice:

1. Fort , a t 2 log t na 1
,

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

e a t cos b t na t>2,

2. Za x ,
na x2,

gdje je a=2.3 f=x na 0.3< x  2,

cos(x-a) za x
,

3.Za x , (a+b)/(e x + cosx) na 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 za i< 10,

gdje je a=2.2,b=0.3. y = tg(i + 0,5) za 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,

log(x + 7
) za x
,

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

gdje je a=2.1,b=0.37. z = at + b na 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 na 0,3 x<4,

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

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

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

9.Za t , t
za t>a,

gdje je a=2,5 z = t sin a t na 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 za a

a t 2/3 -
za t>b,

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

gdje je b=-2.9 y = cos bx na x = 1,

e -x cos bx na x< 1,

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

gdje je a=-0,8 z = tg ax na x = 1,

a 2 x na x< 1,

14. Za x , log bx - 1/(bx+1) za x< 1.3,

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

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

15. Za x [-1,1], ax 2 +bx 2/3 za 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 tačka.

17. Unesite polumjere R 1 , R 2 i visinu. Izračunajte zapreminu skraćenog konusa:
, gdje je S površina baza. Ako je R 1 = R 2 - zapremina i površina cilindra, ako je R 1 = 0 ili R 2 = 0 - zapremina (hπr 2) i površina πr(
) površine konusa.

18. Unesite broj sa tastature. Odredi kojem brojevnom sistemu može pripadati.

19. Unesite broj. Odredi da li je jednako deljivo sa 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 sa osam unesenog broja x i zapišite osmičku cifru riječima.

2. Prema broju unesenom sa tastature, odštampajte naziv ovog broja.

3. Sa tastature unesite broj k (1..30). Odredite kojem danu u sedmici odgovara ako je prvi broj ponedjeljak.

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

5. K sekunda je dana. Izračunajte koliko je sati i punih minuta prošlo do ovog trenutka, usklađujući se sa značenjem riječi (sat, sat, sat, minuta, minuta, minuta).

6. U zavisnosti od broja (N) tipa figure, organizujte unos potrebnih podataka i izračunajte sa N = 1 - površina kruga, N = 2 - zapremina lopte (4 / 3πR 3 ), N = 3 - zapremina cilindra, N = 4 - površina sfere je 4πr 2 .

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

8. Za cijeli broj K (1 ... 99), odštampajte frazu “I am K years old”, za određene vrijednosti K zamijenite riječ “years” s riječju “year” ili “years”.

9. U zavisnosti od broja (N) tipa figure, organizujte unos potrebnih podataka i izračunajte sa N = 1 - površina pravougaonika, sa N = 2 - površina paralelograma, sa N = 3 - površina trapeza 1/2 (a + b) h. U drugom slučaju, ispišite da li je trapez paralelogram ili romb.

10. Pretvorite broj 0 ≤ x ≤ 31 u heksadecimalni sistem brojeva.

11. Napiši kurzivom ostatak dijeljenja bilo kojeg cijelog broja sa pet.

12. Prema unesenom broju ispisati željenu boju u dugi.

13. Dizajnirajte program koji pokazuje da ako je zbir cifara dvocifrenog broja višekratnik tri, onda je i sam broj djeljiv sa tri bez ostatka.

14. Razviti program koji dokazuje da je kvadrat dvocifrenog broja k5 (zadnja cifra je 5) jednak k * ( k + 1) * 100 + 25 (tj. može se dobiti množenjem najviše cifre k na sljedeći po redu i dodatak "25"). Na primjer, 35 * 11 = 3*4*100 + 25.

Za zadatak 2, broj opcije je određen ostatkom dijeljenja pojedinačne opcije brojem 12.

Laboratorija 3

Ključne riječi:

  • stvarni tip podataka
  • cjelobrojni tip podataka
  • karakterni tip podataka
  • string tip podataka
  • boolean tip podataka

Programi koji implementiraju linearne algoritme su najjednostavniji. Svi iskazi u njima se izvršavaju uzastopno, jedan za drugim.

Prilikom programiranja linearnih algoritama, pogledajmo bliže cjelobrojne, logičke, znakovne i nizove tipove podataka.

4.4.1. Numerički tipovi podataka

Već ste upoznati sa osnovnim numeričkim tipovima podataka integer i real. Na njih su primjenjive standardne funkcije, od kojih su neke date u tabeli. 4.2.

Tabela 4.2
Standardne Pascal funkcije


Istražimo rad funkcija round, int i frac primjenjujući ih na neki realni x. Odgovarajući program bi izgledao ovako:

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

4.4.2. cjelobrojni tip podataka

Sljedeće operacije se izvode nad cijelim brojevima u Pascalu: sabiranje (+), oduzimanje (-), množenje (*), dobivanje cjelobrojnog količnika (div), dobivanje cjelobrojnog ostatka dijeljenja (mod) i dijeljenje (/). Rezultati prvih pet operacija su cijeli brojevi. Rezultat operacije dijeljenja može biti realan broj.

Razmotrimo primjer korištenja div i mod operacija, pisanja u Pascalu programa za pronalaženje zbira cifara trocifrenog cijelog broja unesenog s tastature.

Koristimo činjenicu da se trocifreni broj može predstaviti kao sljedeći zbroj: x \u003d a 100 + b 10 + c, gdje su a, b, c znamenke broja.

4.4.3. Tipovi podataka znakova i nizova

Vrijednost vrijednosti znaka (tip char) u Pascalu je bilo koji od znakova koji se na ekranu može dobiti pritiskom na jedan od tastera ili kombinacije tastera, kao i neki drugi karakteri, uključujući i one nevidljive. Skup takvih simbola sastoji se od 256 elemenata, od kojih je svakom, u skladu s korištenom tablicom kodova, dodijeljen kod - broj od 0 do 255.

Znakovi koji odgovaraju prva 32 koda su kontrolni znakovi, a ostali su znakovi za prikaz. Prikazani znakovi također uključuju razmak koji ima kod 32.

Znakovi interpunkcije, znaci aritmetičkih operacija, brojevi, velika i mala latinična slova odgovaraju kodovima od 33 do 127. Slova nacionalnog alfabeta odgovaraju šiframa sa brojevima 128 i dalje.

U tekstu programa može se specificirati konstanta tipa karaktera tako što se bilo koji prikazani znak stavlja u apostrofe: "5", "B", "*".

Ako se vrijednost karakterne varijable čita sa tastature, onda je treba kucati bez apostrofa.

Da biste pronašli kod karaktera, koristite funkciju ord, gdje je znak zadan kao parametar.

Da biste saznali znak po kod, koristite funkciju chr, gdje je kod karaktera specificiran kao parametar.

Vrijednost string vrijednosti (tip string) je proizvoljan niz znakova zatvorenih u apostrofe. U Pascal-u (kao u algoritamskom jeziku), nizovi se mogu spojiti.

Primjer. Napišimo program u Pascalu, u kojem se za slovo uneseno sa tastature njegov kod prikazuje na ekranu. Zatim se na ekranu prikazuje niz, koji je niz od tri slova korištene kodne tablice: slovo koje prethodi originalnom; početno slovo; pismo koje sledi originalu.

4.4.4. boolean tip podataka

Kao što znate, logičke vrijednosti uzimaju samo dvije vrijednosti; u Pascalu je lažno i istinito. Ove konstante su definirane tako da je false< true.

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

Primjer. Napišimo program koji utvrđuje istinitost iskaza "Broj n je paran" za proizvoljni cijeli broj n.

Neka je ans logička varijabla, a n cjelobrojna varijabla. Zatim, kao rezultat izvršavanja operatora dodjeljivanja

varijabla ans će biti postavljena na istinito za bilo koje parno n i na false u suprotnom.


Booleovim varijablama se mogu dodijeliti vrijednosti logičkih izraza konstruiranih pomoću logičkih funkcija koje su vam poznate i, ili, ne, koje su u Pascalu označene sa i, ili, ne, respektivno.

Primjer. Napišimo program koji utvrđuje istinitost tvrdnje "Trougao sa dužinama stranica a, b, c je jednakokračan" za proizvoljne cijele brojeve a, b, c.

Najvažniji

Pascal jezik koristi realne, cjelobrojne, znakovne, stringove, logičke i druge tipove podataka. Za njih su definirane odgovarajuće operacije i funkcije.

Pitanja i zadaci


Top Related Articles