Constante și variabile

Datele la care funcționează programul pot fi definite în acesta ca neschimbate sau ca capabile să își modifice valoarea în timpul execuției programului. Primele sunt numite constante, iar acestea din urmă sunt numite variabile. Ambele variabile și constante sunt stocate în memoria calculatorului (în așa-numita "celula de memorie"). În program, variabilele trebuie să fie descrise în clauza VAR (din cuvântul variabilă VARIABLE) și constantele din clauza CONST. Fiecare variabilă are trei proprietăți principale: nume, valoare, tip.







Atât în ​​viață cât și în programare, este foarte util să folosim conceptul de tip. Să presupunem că ți sa spus că trebuie să-l dobândești pe Joy. Nimic altceva nu este cunoscut - câte picioare are, fie că este un obiect sau un animal etc. în același timp, o mulțime poate fi raportată prin adăugarea unui singur cuvânt care definește tipul de obiect numit Joy, de exemplu, Joy este un câine sau Joy este o persoană sau Joy este un computer. Orice constantă sau variabilă folosită în program aparține unui anumit tip. Tipul specifică setul de valori posibile ale variabilelor, aspectul constantelor, posibilele operații pe valori. Valorile tipului INTEGER în Pascal nu pot fi mai mici de -32768 sau mai mari decât 32767. Constantele întregi sunt scrise ca o succesiune de cifre cu sau fără semn. Variabilele ar trebui să fie enumerate în narațiunea programului în propoziție

VAR variable_name: INTEGER;

Deasupra variabile de tip întreg sunt operații aritmetice permise: + (adăugare) - (scădere) * (înmulțire), DIV (diviziune număr întreg), MOD (găsirea restul împărțirii întregi).

Toate operațiile produc rezultatul unui tip întreg. De exemplu,

15 DIV 4 = 3, 25 MOD 4 = 1.

Deasupra numerelor întregi, divizarea normală este de asemenea permisă, este marcată de slash "/" și dă un rezultat de tipul real.

2.4. Introduceți REAL (real).
Constantele de tip real (numere cu o parte fracționată) sunt reprezentate cu un punct zecimal:
12.3, -1.5, -0.75, sau sub formă exponențială: -0.45E5, 6.7E-10 0.355E6 (pentru numărul într-o formă convențională trebuie să fie transferat într-o virgulă după numărul de biți ai respectivei E la dreapta dacă numărul este pozitiv, stânga dacă negativ) . De exemplu, 6.7E-10 = 0.00000000067.

Variabilele reale trebuie descrise printr-o propoziție

Deasupra valorilor tipului real, sunt permise operațiile aritmetice: + (adunare), - (scădere), * (multiplicare), / (diviziune).

2.5. Operator de atribuire
Operatorul de atribuire dă variabilei o valoare specifică, de exemplu:

distrugând vechiul. Un program rar se face fără un operator de atribuire.

Puteți atribui valoarea unei alte variabile sau rezultatul evaluării expresiei aritmetice: A: = B; A: + B + C; X: = Y + 2-Z.

Formatul comenzii:
<имя переменной>: =<выражение>

Executarea comenzii de atribuire are loc în această ordine: în primul rând, <выражение>, atunci valoarea rezultată este atribuită unei variabile.

Exemplul 1. Fie variabila A o valoare de 6. Care este valoarea variabilei A după executarea comenzii: A: = 2 x A - 1.

Soluția. Calculul expresiei 2 x A - 1 pentru A = 6 dă numărul 11. Astfel, noua valoare a variabilei A va fi 11.

Exemplul 2.
Modificați valorile celor două variabile A și B împreună, utilizând a treia variabilă R pentru a stoca temporar valoarea.

Soluția.
Programul prim2_2;
Var a, b, r: real;
începe
Scrieți ("Introduceți două numere");
Citiți (a, b);
R: = a;
A: = b;
B: = r;
Scrieți ('a ='. A, 'b =', B);
Sfârșit.

Sarcini.
1) Determinați valoarea finală a variabilelor X și Y ca rezultat al următorilor algoritmi:
a) X: = 2 b) X: = 1,5
X: = X x X X: = 2 x X + 1
X: = X x X x X Y = = X / 2
X: = X x X x X x Y: = X + Y
X: = X - Y

2) Modificați valorile celor trei variabile X, Y și Z în conformitate cu schema de schimb triplă: X®Y®Z®X.

3) Alocați variabilei N valoarea proprie, mărită cu N de ori.

4) Ce este X ca urmare a programului:
X: = 2;
X: = X + X;
X: = X-X

5) Specificați valorile pentru a și b după următorii operatori de atribuire:
a) a: = 5,8 b) a: = 0
b: = - 7,9 b: = - 9,99
b: = a b: = a
a: = b a: = b

Mai întâi, verificați dacă sarcinile anterioare sunt completate corect. Și dacă nu sa întâmplat totul, nu-ți face griji, nu e cel care nu face nimic rău.
În lecția anterioară ați întâlnit reprezentanți ai tipurilor reale și integrale. De fapt, ambele au mai multe tipuri de diferite valori acceptabile.
Următorul tabel prezintă 5 tipuri întregi standard:

Expresiile aritmetice sunt construite din numele variabilelor, constantelor, semnelor de operare și parantezelor, așa cum este obișnuit în matematică. La calculul valorilor lor, operațiile sunt efectuate în ordinea priorității: *, /, DIV, MOD și apoi + și -. Operațiile cu aceeași prioritate se efectuează de la stânga la dreapta.
Împreună cu variabilele și constantele, expresiile aritmetice pot include funcții. În determinarea valorii unei expresii, în primul rând, se calculează valorile funcțiilor incluse în ea. În Pascal, sunt disponibile următoarele funcții standard:

Valoarea absolută a lui X

Fracțiunea X

Partea întregă X, zeroarea părții fracționare

Se rotunjește până la cel mai apropiat număr întreg

Radacina pătrată X

Eliminarea părții fracționare

Argumentul funcției trebuie să fie cuprins în paranteze.
Expresia din Pascal, precum și din alte limbi de programare, este scrisă într-o singură linie, iar parantezele sunt folosite pentru a salva ordinea acțiunilor. Toate acțiunile trebuie specificate. De exemplu, 2X + XY ar trebui să fie scris ca 2 * X + X * Y.

1) Scrieți următoarele expresii în Pascal:

Câteva programe fac fără introducere de date și nu există programe care să nu dea rezultate. Puteți scrie un astfel de program, dar cine va avea nevoie de el?

4.1 Intrare.
Un operator de intrare este utilizat pentru a raporta date către computer. Acesta plasează valoarea de intrare a variabilei în celula alocată acesteia. Operator de intrare:

READ (lista variabilelor), unde lista de variabile este o secvență de nume de variabile, separate prin virgule.

De exemplu, READ (X, Y, Z); READ (BETA);

Instrucțiunea READ oprește programul și așteaptă ca utilizatorul să introducă un număr pe tastatură și apasă . Numărul introdus este plasat în memoria principală, în celula alocată, care are numele specificat în instrucțiune. Dacă lista de intrări conține mai multe nume, atunci trebuie să introduceți valoarea proprie pentru fiecare. Introduceți numere separate prin spații sau apăsând o tastă .
Intrarea se termină întotdeauna cu o cheie . După operarea acestui operator, cursorul se află în spatele ultimului caracter introdus, dar nu este tradus pe o linie nouă. Pentru a deplasa cursorul pe o linie nouă a ecranului după introducerea datelor, utilizați operatorul

Operatorul READLN diferă de READ că prin introducerea cantității necesare de date, acesta ignoră toate celelalte tastate înainte de a apăsa tasta .







4.2. Concluzie.
Pentru a scoate rezultatele programului, operatorul

Lista de ieșire poate conține nume de variabile, constante numerice și text, expresii. Elementele din listă sunt separate prin virgule. Dacă este specificată o variabilă, valoarea acesteia este afișată, constanta este ieșită neschimbată, valorile expresiilor sunt calculate mai întâi și apoi afișate pe ecran.
După expresia după colon, puteți specifica lățimea câmpului în care va fi afișată valoarea afișată. De exemplu, operatorul WRITE (10: 3, 55: 6) se va afișa pe ecranul .10. 55 (punct înseamnă un spațiu, o poziție a ecranului gol). Ieșirea are loc în punctul unde se află cursorul.
Când se afișează valori reale, puteți specifica câte cifre zecimale trebuie stocate în partea fracționată a numărului. Numărul de cifre este indicat după lățimea câmpului după colon.
De exemplu, dacă X = 3.14159 și Y = 2.71468, atunci pe ecran va fi afișat operatorul WRITE (X: 6: 2, Y: 8: 3). 3.14. 2.715.

Aceste linii vor apărea pe ecran fără citate. Deci, pentru X = 3.5, acest operator va afișa:

Cursorul este mutat pe o nouă linie de către operatorul declarației goale WRITELN;
Dacă trebuie să mutați cursorul după ieșire, atunci operatorul

Proba de program.
Să se solicite să se găsească suma, produsul și diferența a două numere date. Pentru fiecare dintre numere, trebuie să veniți cu numele variabilei și să specificați tipul acesteia. Apoi, introduceți aceste numere în celulele alocate și, utilizând capabilitățile operatorului de ieșire, imprimați rezultatele.
La rezolvarea problemelor, numele sunt atribuite nu numai datelor inițiale, ci și rezultatelor, precum și valorilor intermediare obținute. Deoarece în acest exemplu avem nevoie de trei rezultate, introducem variabilele X, Y, Z pentru ele. În program, acestor variabile li se vor atribui valorile, suma și diferența dintre cele două numere introduse.

Program prim_4;
Var a, b, x, y, z: real;
începe
Scrieți ('introduceți două numere cu un spațiu, apoi faceți clic pe „);
Citiți (a, b);
X: = a + b;
Y: = a * b;
Z: = a-b;
Writeln ('a + b =', x);
Writeln ('a * b =', y);
Writeln ('a-b =', z);
readln
Sfârșit.

sarcini:
1) Scrieți un program care solicită două numere, găsește restul de la împărțirea primului cu al doilea și scoate rezultatul.
2) Efectuați un program pentru a găsi perimetrul unui pătrat, dacă suprafața acestuia este dată.
3) Sunt date două numere. Găsiți aritmetica medie.
4) Găsiți zona inelului din razele externe și interne date.
5) Sunt date picioarele unui triunghi drept. Găsiți perimetrul său.
6) * Schimbați valorile variabilelor X și Y, fără a utiliza o variabilă suplimentară.


5.3 Aritmetica integrala. Sarcini pentru diviziunea intreg.
În programare, există o întreagă clasă de sarcini în care acțiunile sunt efectuate numai cu numere întregi. În rezolvarea unor astfel de probleme, operațiunile cu numere întregi MOD și DIV sunt de obicei utilizate. Astăzi ne vom familiariza cu problemele legate de împărțirea întregului domeniu.

Sarcina. Se indică distanța în centimetri. Găsiți numărul de contoare complete în el.

Program prim_4;
Var a, b: întreg;
începe
Scrieți ('introduceți distanța în centimetri');
Citiți (a);
b: = un mod 100;
Writeln (b, "metri");
readln
Sfârșit.

Continuați să vă familiarizați cu aritmetica întregului. Foarte adesea, este necesar ca programul să determine ce numere este alcătuit sau să determine cifra unei cifre date sau cifrei inversă într-o anumită cifră. Dacă întrebați o persoană pentru a rezolva această problemă, nu va fi nici o problemă, dar despre computer. Pentru aceasta, orice număr este un set de zero și unul, adică cod binar. Spre deosebire de noi, computerul efectuează toate acțiunile din sistemul binar. De exemplu, numărul 27 este stocat în memoria sa ca 11011. Și unde sunt 2 și 7?

Pentru a rezolva aceste probleme, este necesar să ne amintim că un număr este orice sistem de număr zecimal (de exemplu, unul la care suntem obișnuiți să) .În sistemul de numărul de poziție (la care sistemul zecimal), valoarea indicată de cifre în număr record, depinde din poziția ei. De exemplu, printre 333 prima cifră reprezintă cele trei sute, a doua - trei duzini, a treia - trei unități. Orice număr poate fi scris ca:

Prin urmare, pentru a procesa numere zecimale, 10 este folosit la gradul corespunzător. De exemplu, trebuie să obțineți un număr format prin schimbarea cifrelor unui număr dat.

Să presupunem că n = 27 este dat.
X1: = 27 mod 10 = 7
X2: = 27 div 10 = 2
M: = 7 * 10 + 2 = 72, după cum este necesar.

Din păcate, în acest fel, putem determina numai numerele extreme ale unui număr. Și dacă cifra de care avem nevoie nu e pe margine? Nu vă faceți griji, o vom face ultima. De exemplu, având în vedere un număr de trei cifre, trebuie să determinați cifra medie a numărului.

Să presupunem că a = 246
B: = a div 10 = 24
B: = b mod 10 = 4

Sau pe alta:
B: = un mod 100 = 46
B: = b div 10 = 4

Lucrări de instruire.
1. Se dă un număr din două cifre. Caută:
a. numărul de zeci din el;
b. numărul de unități din acesta;
c. suma cifrelor sale;
d. produsul cifrelor sale.

2. Se dă un număr de trei cifre. Caută:
a. Numărul de unități din acesta;
b. Numărul de zeci;
c. Suma cifrelor sale;
d. Produsul figurilor sale.

3. Se dă un număr de trei cifre. Găsiți numărul obținut prin citirea cifrelor sale de la dreapta la stânga.

4. Se dă un număr de trei cifre. În ea, a trecut prima cifră din stânga și a atribuit-o la sfârșit. Găsiți numărul rezultat.

5. Se dă un număr de trei cifre. În ea, a trecut ultima cifră din dreapta și a atribuit-o la început. Găsiți numărul rezultat.

6. Se dă un număr de trei cifre. Găsiți numărul obținut prin permutarea primei și celei de-a doua cifre a numărului dat.

7. Se dă un număr de trei cifre. Găsiți numărul obținut permițând a doua și a treia cifră a numărului dat.

8. * Având un număr real A, care conține două semne înainte de virgulă și două după. Obțineți un număr nou schimbând întreaga și partea fracționată din numărul A.

9. * Sunt denominări în numerar în K ruble și 1 ruble. Emisiunea N rupe un set minim de note ale unei valori date.

În practică, problema bine-cunoscut, cursul ulterior al soluției, care depinde de îndeplinirea tuturor condițiilor. În viață, de multe ori trebuie să acționați în funcție de circumstanțe, din anumite condiții. Dar dacă viața ne caută adesea o cale de ieșire din situația numai atunci când prins în ea, programul este necesar să se prevadă toate acțiunile care urmează să fie efectuate după verificarea stării, ca și în cazul punerii sale în aplicare, iar în caz de neplată. Pentru a schimba secvența de execuție a diferitelor părți ale programului, aplicați o declarație condiționată.

7.1. Declarație condiționată.
Un operator condiționat vă permite să executați sau să săriți instrucțiunile programului, în funcție de o anumită condiție. O declarație condiționată poate avea două forme:

Operatorul complet.
Formatul de comandă
IF condiție THEN operator_1 ELSE statement_2;

Constante și variabile

Operatorul incomplet.
Formatul de comandă
IF condiție THEN declarație;

Constante și variabile

Dacă traducem în engleză cuvintele în engleză, obținem:

IF condiție THAT operatorul_1 OTHERWORD statement2; sau condiție IF;

Ca o condiție, comparați operațiunile folosite: =, <>, <=,>= <,>. Expresiile aritmetice sunt scrise în stânga și în dreapta semnului de comparație.

De exemplu, operatorul
Dacă x<>0 atunci z: = y / x
Altfel scrie ("Eroare!");
atribuie variabilei Z valoarea din coeficientul y / x, dacă x<>0, altfel se va afișa cuvântul "Eroare!" Pe ecran.

7.2. Operator compozit.
În unele cazuri, după cuvintele THEN și ELSE, este necesar să nu se execute niciun operator, ci mai multe. Apoi acești operatori sunt încorporați în așa-numitele paranteze de operare, unde BEGIN este paranteza de deschidere, END este paranteza de închidere. Toți operatorii din brațele operatorului sunt numiți operatori compuși. Înainte de cuvântul ELSE, nu se introduce niciodată punct și virgulă.

Formatul comenzii: instrucțiunea BEGIN; operator; operator END;

După executarea unui astfel de operator, va exista o variabilă mai mare în A, iar în variabila B, cea mai mică dintre cele două valori găsite anterior.

Ca acțiunea efectuată în declarația condiționată, poate exista o altă declarație condiționată. De exemplu:
Dacă sqr (x) + sqr (y)> 1 atunci
Dacă x> y atunci z: = 0
Alt z: = 1;

Cu această formă de mișcare spre dreapta pentru fiecare acțiune internă, este ușor de înțeles care dintre cele două cuvinte IF aparține cuvântului ELSE. Luați în considerare un exemplu de program folosind o declarație condiționată. Să presupunem că pentru două numere întregi este necesar să se determine dacă acestea sunt chiar sau nu. Pentru a verifica paritatea, folosim condiția: restul de împărțire cu 2 numere parțiale este 0.

Programul prim_7;
Var a, b: întreg;
începe
Scrieți ("introduceți două numere întregi");
Citiți (a, b);
Dacă un mod 2 = 0 atunci Writeln ('a - even')
Else Writeln ("o - ciudat");
Dacă b mod 2 = 0 atunci Writeln ('b - par')
Else Writeln ("b-odd");
readln
Sfârșit.

Lucrări de instruire.
1. Calculați valoarea y pentru o valoare dată de x:

2. Introduceți două numere. Imprimați mai întâi cel mai mic, apoi cel mai mare.
3. Numerele x și y sunt date. Calculați numărul z, egal cu x + y, dacă x<=y, и 1 - х + y в противном случае
4. Sunt date două numere. Ieșiți primul dintre ele, dacă este mai mare decât cel de-al doilea și ambele numere, dacă nu este.
5. Dacă numărul dat x este mai mic decât zero, atunci z atribuie valoarea celei mai mari dintre cele două numere x și y, altfel z atribuie jumătate suma acestor numere.
6. * Sunt date două numere. Cel mai mic dintre ele este înlocuit cu jumătate de sumă dintre aceste numere și cu cât produsul este mai mare.
7. Se dă raza cercului și partea laterală a pătratului. Care cifră are o suprafață mai mare?
8. Având un număr întreg. definesc:
a. Este chiar;
b. Se termină cu numărul 7;
c. Se divide cu 13?







Articole similare

Trimiteți-le prietenilor: