Declarație condiționată dacă altfel. dacă și altfel condiții

Această lecție privește operatorul condiționat în Pascal ( dacă). Explică cum să folosești mai multe condiții într-un singur construct ( ȘIȘi SAU). Sunt luate în considerare exemple de lucru cu un operator

Vă reamintim că acest site nu pretinde a oferi o prezentare completă a informațiilor pe această temă. Scopul portalului este de a oferi oportunitatea de a învăța material pe baza exemplelor rezolvate gata făcute pe tema „Limbajul de programare Pascal” cu sarcini practice pentru consolidarea materialului. Sarcinile Pascal prezentate pe site sunt aranjate secvențial pe măsură ce complexitatea lor crește. Site-ul web poate fi folosit de profesori și lectori ca ajutor vizual auxiliar.

Înainte de a lua în considerare acest subiect, au fost utilizați în principal algoritmi liniari în Pascal, care sunt tipici pentru probleme foarte simple când acțiunile (operatorii) sunt efectuate secvenţial, unul după altul. Algoritmii mai complecși implică utilizarea unui construct de ramificare.

Diagrama bloc operator condiționat:

Instrucțiunea condiționată în Pascal are următoarea sintaxă:

Versiune prescurtată:

if condition then statement;

Versiunea completa:

if condition then statement else statement;

Operatorul condiționat în Pascal - if - servește la organizarea progresului unei sarcini în așa fel încât succesiunea de execuție a operatorilor să se modifice în funcție de o anumită condiție logică. O condiție logică poate lua una din două valori: fie adevărată, fie falsă, respectiv, poate fi adevărată sau falsă.

Operator compus

Dacă, într-o condiție adevărată, este necesar să se execute mai multe instrucțiuni, atunci Conform regulilor limbajului Pascal, acestea trebuie să fie închise într-un bloc, începând cu cuvântul funcție begin și se termină cu cuvântul funcție end . Un astfel de bloc este de obicei numit paranteze operator, și această construcție - operator compus:

Paranteze operator și operator compus în Pascal:

if logic expression then begin statement1; operator2; end else begin statement1; operator2; Sfârşit;

Traducerea din engleză a operatorului de condiție va facilita înțelegerea utilizării acestuia:

DACĂ APOI ALTE
DACĂ ACEA IN CAZ CONTRAR


Condiția (într-o expresie logică) folosește operatori relaționali.
Luați în considerare lista de operatori relaționali a lui Pascal:

  • mai mult >
  • Mai puțin
  • mai mare sau egal cu în Pascal >=
  • mai mic sau egal cu în Pascal
  • comparație în Pascal =
  • nu este egal în Pascal

Exemplu: găsiți cel mai mare dintre două numere

Opțiunea 1 Opțiunea 2


Înțelegeți lucrarea în detaliu puteți folosi operatorul condiționat în Pascal urmărind tutorialul video:

Exemplu: calculați valoarea variabilei y folosind una dintre cele două ramuri

Afișați soluția:

var x,y:real; începe scrieln("introduceți x"); citeste(x); dacă x>0 atunci y:=ln(x) altfel y:=exp(x); writeln ("y=", y:6:2) (numărul rezultat va ocupa 6 poziții și va avea 2 zecimale) end.

Observați cum iese y în acest exemplu. Când deduceți variabile de tip în pascal, puteți utiliza așa-numitele ieșire formatată, sau notație cu două puncte:
y:6:2
- numărul de după primele două puncte (6) indică câte caractere va ocupa numărul atunci când este afișat pe ecran
- numărul de după al doilea două puncte (2) indică câte zecimale ale numărului real vor fi afișate

Astfel, utilizarea unei astfel de notații în pascal vă permite practic să rotunjiți la sutimi, miimi etc.

Sarcina 0. Calculați valoarea variabilei y folosind una dintre cele două ramuri:

Sarcina 1. Două numere sunt introduse în computer. Dacă primul este mai mare decât al doilea, calculați suma lor, în caz contrar - produsul. După aceasta, computerul ar trebui să imprime rezultatul și textul PROBLEMĂ REzolvată

Sarcina 2. Dragonul crește trei capete în fiecare an, dar după ce împlinește 100 de ani, doar două. Câte capete și ochi are un dragon? N ani?

Operații logice în Pascal (în expresie logică)

Când trebuie să utilizați o condiție dublă în Pascal, veți avea nevoie de operații logice.

  • Operație logică ȘI (Și), plasat între două condiții, spune că ambele condiții trebuie îndeplinite simultan (trebuie să fie adevărate). Sensul logic al operației este „conjuncție”.
  • Plasat intre doua conditii, semnul SAU (OR) spune că este suficient dacă cel puțin una dintre ele este îndeplinită (una dintre cele două condiții este adevărată). Sensul logic al operației este „disjuncție”.
  • În Pascal XOR - un semn al unei operații logice care are sensul de „disjuncție strictă” și indică faptul că este necesar ca una dintre cele două condiții să fie îndeplinită (adevărată), iar cealaltă să nu fie îndeplinită (falsă).
  • Operație logică NU înaintea unei expresii sau variabile logice înseamnă „negație” sau „inversie” și indică faptul că, dacă o anumită variabilă sau expresie este adevărată, atunci negația ei este falsă și invers.

Important: Fiecare condiție simplă trebuie inclusă între paranteze.

Exemplu: Să ne uităm la exemple de operații logice în expresii logice în Pascal

1 2 3 4 5 6 7 8 var n: întreg ; începe n: = 6 ; dacă (n>5) și (n<10 ) then writeln ("истина" ) ; if (n>7) sau (n<10 ) then writeln ("истина" ) ; if (n>7)xor(n<10 ) then writeln ("истина" ) ; if not (n>7) apoi writeln("adevărat"); Sfârşit.

var n:întreg; începe n:=6; dacă (n>5) și (n<10) then writeln("истина"); if (n>7) sau (n<10) then writeln("истина"); if (n>7)xor(n<10) then writeln("истина"); if not(n>7) apoi writeln("adevărat"); Sfârşit.

Exemplu: Compania recrutează angajați cu vârsta cuprinsă între 25 și 40 de ani inclusiv. Introduceți vârsta persoanei și stabiliți dacă este potrivit pentru această companie (afișați răspunsul „potrivit” sau „nepotrivit”).
Particularitate: trebuie să verificăm dacă două condiții sunt îndeplinite simultan.

Exemplu: Având în vedere un număr întreg A. Verificați adevărul afirmației: „Numărul A este impar”.

Lucrări de laborator

Pe tema: " Operator de condiție dacă - altfel "


1. Scop și sintaxă

Declarația de condiție if-else este utilizată pentru a selecta direcția de funcționare a programului în funcție de condițiile existente la un anumit punct al programului în momentul executării acestuia.

Forma generală de scriere a unui operator condiționat

dacă ( <условие>)

<блок операторов 1>;

<блок операторов 2>;

Dacă în momentul executării<условие>adevărat, programul transferă controlul<блоку операторов 1>și, mai departe, la prima declarație din afara constructului if-else. în care<блок операторов 2>nu este executat. Altfel, dacă<условие>fals, executat<блок операторов 2>, A<блок операторов 1>sarit. Diagrama bloc corespunzătoare


Acoladele din sintaxa instrucțiunii if-else sunt folosite pentru a evidenția blocurile 1 și 2 din text. Încercați să plasați acoladele de închidere sub cea de deschidere pentru a îmbunătăți lizibilitatea codului programului. În același scop, textul din interiorul acoladelor trebuie deplasat la dreapta cu mai multe poziții.

Orice expresie booleană care se evaluează la adevărat sau fals poate fi folosită ca o condiție în declarațiile if-else. Mai jos este un tabel care arată cele mai simple operații de comparare între numere întregi și numere reale

Exemplul 1. Trebuie să scrieți un program care convertește temperatura de pe scara Celsius T C (°C) în temperatura de pe scara Kelvin T K (K). Valoarea T C este introdusă de utilizator de la tastatură.

Soluţie. Folosim binecunoscuta formulă de conversie – T K = T C – T 0, unde T 0 = –273 °C este temperatura zero absolut. Vom considera T C introdus ca fiind incorect dacă este mai mic de T 0 .

// – KelvinvsCelsius–

#include // pentru streaming I/O

#include // pentru console I/O (getch)

#pragma argsused

floatT0 = -273; // declară și inițializează T0

floatTc, Tk; // declară Tc și Tk reale

cout<<» VvediteTc=»; // выводим приглашение

cin>>Tc; // solicita Tc

dacă ( Tc < T 0) // verifica starea Tc

cout<<» Tc < T0!»; // условие истинно, выводим на

} // ecran cu mesaj de eroare

Tk = Tc-T0; // condiția este falsă, calculează

cout<< «Tk =» << Tk; // Tk и выводим на экран

getch(); // întârzie înainte de a apăsa o tastă

întoarce 0; // încheie programul

Tastați codul de mai sus, compilați-l și rulați programul. Examinați rezultatele operației la diferite valori ale T C .

2. Opțiuni de înregistrare scurtate

În programare, este obișnuit să se constate că o anumită acțiune este necesară ca răspuns la condițiile existente (de exemplu, dacă sunt primite date de intrare incorecte de la utilizator, atunci emiteți un mesaj de eroare și părăsiți programul). În astfel de cazuri, programele C++ pot folosi o notație scurtă a instrucțiunii condiționate cu blocul else lipsă. Forma generală a unei astfel de înregistrări

dacă ( <условие>)

<блок операторов>;

Aici, dacă condiția este adevărată, controlul este transferat blocului de instrucțiuni în acolade. Dacă condiția este falsă, acest bloc este omis. Diagrama bloc corespunzătoare diferă de cea anterioară în absența unui „braț”


O altă opțiune de prescurtare este utilizată atunci când oricare dintre blocurile if sau else constă dintr-o singură instrucțiune. În acest caz, este permisă absența bretelelor care delimitează acest bloc.

dacă ( <условие>)

operator 1;

operator 2;

Aici, operatorii 1 și 2 pot fi nu numai operații aritmetice simple pe o linie sau operatori I/O, ci și constructe complexe cu mai multe linii, cum ar fi alte instrucțiuni condiționale (imbricate) sau operatori de buclă, care vor fi discutate mai jos.

3. Declarații imbricate

Declarațiile condiționate pot fi imbricate unele în altele, în conformitate cu algoritmul software pe care îl implementează. Este permis un grad arbitrar al „cuibării” lor.

Dacă o instrucțiune if-else este imbricată în alta, atunci prima instrucțiune este inclusă în a doua complet, și nu oricare dintre părțile sale if sau else. Suprapunerea parțială a blocurilor lor individuale este inacceptabilă.

În exemplul de mai sus, una dintre declarații (afișată cu aldine) este imbricată în alta. Intrarea B) este incorectă datorită faptului că blocul else al instrucțiunii condiționale interioare se suprapune parțial atât cu blocurile if și else ale instrucțiunii exterioare.

Exemplul 2. Utilizatorul introduce trei numere întregi a, b, c de la tastatură. Este necesar să afișați cel mai mare dintre aceste numere.

Soluţie. Unul dintre algoritmii posibili pentru rezolvarea acestei probleme este prezentat în diagrama bloc următoare.


Schema poate fi implementată programatic folosind instrucțiuni if-else imbricate

// – Selectarea celui mai mare dintre 3 numere –

#include

#include

#pragma argsused

int main (int argc, char* argv)

plutitor a, b, c; // declar trei variabile

cout<< «Vvedite a –»; // вводимзначения a, b, c

cout<< «Vvedite b –»;

cout<< «Vvedite c –»;

dacă (a>b) // dacă a > b

dacă (a>c) // dacă a > c

cout<<» max = «<

else // altfel, i.e. în cazul în care o<= с

cout<<» max = «<

else // altfel, i.e. în cazul în care o<= b

dacă (b>c) // și dacă b > c

cout<<» max = «<

else // altfel, i.e. dacă b<= а

cout<<» max = «<

getch(); // întârzie înainte de a apăsa orice tastă

Analizați diagrama bloc a acestui algoritm și implementarea sa software. Modificați algoritmul și codul programului pentru a găsi cel mai mic dintre cele trei numere.

4. Expresii logice compuse

Condiția dintr-o declarație if-else poate fi exprimată ca mai mult decât o simplă comparație a două valori numerice. De exemplu, sunt foarte frecvente condițiile duble, care în matematică sunt scrise ca „a< b < c». Запись означает, что значение b лежит в диапазоне между значениями a и c. В программе такие условия должны быть переформулированы с использованием простых операций сравнения и логических операций «И», «ИЛИ», «НЕ»

În special, expresia „a< b < c» сформулируем как «a меньше b, и b меньше c». На С++ это будет записано как (a

în cazul în care o

Exemplul 3. Pe o tablă de șah goală există un pion alb în poziția (n, m) și un episcop negru în poziția (k, l). Aici prima coordonată este numărul coloanei tablei de șah, a doua este numărul rândului (ambele variază în intervalul de la 1 la 8). Evaluați situația actuală în funcție de trei opțiuni

Pionul este atacat

Elefantul este atacat

Episcopul și pionul sunt „în siguranță”.

Soluţie. Să ținem cont de faptul că pionul poate ataca cele două poziții cele mai apropiate de el în diagonală înainte, iar episcopul atacă complet ambele diagonale. De aici se pot formula conditiile

· „((k = n+1) SAU (k = n‑1)) ȘI (l = m+1)” – atac de pion asupra episcopului,

· „(k+l = n+m) SAU (k-l = n-m)” – atac episcop pe pion,

· în caz contrar piesele sunt în siguranță.

// – Compoziție de șah –

#include

#include

int main (int argc, char* argv)

cout<<«Koordinaty beloi peshki:«<

cout<<» vvedite n –»;

cout<<» vvedite m –»;

cout<<«Koordinaty chernogo slona:«<

cout<<» vvedite k –»;

cout<<» vvedite l –»;

if(((k==n+1)||(k==n‑1))&&(l==m+1)) // episcopul atacat

cout<

if((k+l==n+m)||(k-l==n-m)) // pion atacat

cout<

else // nici un atac

cout< Să ne uităm la organizarea input-output și implementare principalele structuri de conducere. Orice algoritm specific poate fi scris într-un limbaj de programare care folosește doar trei structuri de control: execuție secvențială, ramificare și repetiție.
Execuția consecventă este atât de comună încât rar ne amintim de ea ca structură de control. Secvența de instrucțiuni este executată în ordinea locației lor naturale în program, cu o posibilă abatere de a apela un fragment (funcție) extern, dar cu revenire obligatorie la punctul de apel.
În cel mai simplu caz, ramificarea este descrisă în limbajul C folosind un operator condiționat. având forma:

dacă (expresie)
operator_1;
altfel
operator_2;

unde este partea altfel poate fi absent. Mai întâi se evaluează „expresia”. în paranteze; daca este adevarat atunci se executa operator_1. Dacă " expresie" fals (egal cu zero - NUL), Acea operator_1 este omis și executat operator_2. Dacă în locul operatorilor executați condiționat ar trebui să existe un grup de mai mulți operatori de limbă, atunci aceștia sunt încadrați în acolade - { }. Adesea „expresia” din paranteze reprezintă o condiție specificată folosind operatori relaționali și logici. Operațiile relaționale sunt notate în C după cum urmează:

= = egal; ! = nu este egal;< меньше; >Mai mult;
< = меньше или равно; >= mai mare sau egal cu.

Simbol ! în limbajul C denotă negație logică. Mai sunt două operații logice: || înseamnă sau && - logic ȘI. Operațiile relaționale au prioritate față de operațiile aritmetice, deci o expresie a formei k > n%i calculat ca k > (n%i). O prioritate && mai mare decât ||, dar ambele operații logice sunt efectuate după operații relaționale și aritmetice. În cazurile îndoielnice, este mai bine să folosiți paranteze.

Pentru a ilustra utilizarea operatorului condiționat, luați în considerare un program pentru determinarea celui mai mare dintre cele trei numere. Primul dacă operatorul reprezintă o construcţie condiţională completă, în al doilea caz altfel absent. Rețineți că punctul și virgulă încheie declarația de atribuire max=x, nu încalcă unitatea dacă- operator. Dacă altfel- ramura este omisă în condiții imbricate, interpretarea lor poate fi ambiguă. Pentru a evita ambiguitatea, rezolvați-o astfel: altfel se potrivește cu cel mai apropiat dacă, neavând al lui altfel.

Exemplul 1.3.

Să ne uităm la un exemplu de program care utilizează mai multe instrucțiuni condiționale imbricate. În acest program există o linie plutitor A, B, X declară aceste trei variabile ca valori reale. Șir de format al funcției scanf vă indică să introduceți două numere reale care vor deveni valorile variabilelor A și B respectiv.

Exemplul 1.4

/*SOLUȚIA ECUAȚIEI AX=B*/
#include
principal()
{

plutitor A,B,X;
printf("INTRODARE A, B\n");
scanf("%f %f",&A, &B);
dacă(A!=0)
printf("SOLUȚIE:%f\n", B/A);
altfel
dacă(B==0)
printf("X-ORICE NUMĂR\n");
altfel
printf("NU SOLUȚIE\n");
}

Vedeți cum arată ramificarea atunci când adâncimea de imbricare a instrucțiunilor condiționate este de trei (Exemplul 1.5). Dacă cel puțin o condiție este adevărată, atunci toate cele rămase sunt, desigur, sărite. Când adâncimea de imbricare a declarațiilor condiționate depășește trei, ramificarea își pierde claritatea și claritatea.
Pentru a implementa ramificarea multitasking, aceștia recurg de obicei la o structură de control alegere ( comutator) (vezi paragraful 9.4). Când structura de control al ramurilor devine deosebit de confuză, bretele pot oferi o oarecare claritate. Acestea sunt necesare atunci când o instrucțiune condiționată conține mai multe instrucțiuni sau funcții, de exemplu

În viața de zi cu zi, este adesea necesar să luați o decizie, în funcție de o anumită condiție. De exemplu, dacă vremea este caldă în weekend, vom merge la malul mării, în caz contrar, dacă este înnorat, vom sta acasă.

Acest lucru se întâmplă foarte des și în programare. Pentru asta există două instrucțiuni condiționale sunt if-else și switch-case. În acest articol vă voi spune despre operatorul if-else, iar în articolul următor despre switch-case.

Sintaxa instrucțiunii condiționale if-else Următorul:


Dacă condiția este adevărată, atunci se execută codul din blocul if, în caz contrar, dacă condiția este falsă, atunci se execută codul din blocul else.

Pentru o mai bună înțelegere, să luăm un exemplu atât de simplu, avem o anumită sumă de bani și dorim să cumpărăm o mașină, iar aici apare imediat următoarea condiție: dacă avem destui bani, atunci putem cumpăra această mașină, altfel nu poti.

Var bani = 35000; // Să zicem că avem 35.000 de euro // Mașina pe care vrem să o cumpărăm costă 50.000 de euro. Și următoarea condiție apare dacă(bani > 50000)( document.write(„Putem cumpăra o mașină”); )else( document.write(„Nu sunt suficienți bani pentru a cumpăra o mașină”); )

Salvăm documentul, îl deschidem în browser și vedem că pe pagină apare următorul mesaj: „Nu sunt suficienți bani pentru a cumpăra o mașină”. Dacă am avea mai mult de 50.000 de euro, atunci codul din blocul if ar fi executat. Dacă am avea exact 50.000 de euro, atunci nici nu am putea cumpăra o mașină, pentru că 50.000 nu este mai mult de 50.000 Pentru ca condiția în acest caz să fie adevărată, trebuie să scriem un semn mai mare sau egal (>=) .

Cometariu! Operația logică egal este scrisă cu două semne egale (==). Există, de asemenea, o operație logică mai mică sau egală cu (

folosind bretele

Dacă există un singur operator, atunci bretele nu sunt necesare dacă există mai mulți operatori în bloc, atunci sunt necesare bretele.

Exemplul de mai sus va funcționa perfect fără acolade, deoarece ambele blocuri conțin o singură declarație.

Puteți scrie orice operații logice în interiorul if, indiferent dacă sunt simple sau complexe. De asemenea, puteți utiliza operatorii AND (&&) și SAU (||).

Cometariu! Prezența blocului else este opțională.

De exemplu, dacă a este egal cu b și c este egal cu d, atunci afișăm mesajul corespunzător, în caz contrar, dacă nu există niciun alt bloc, atunci pur și simplu trecem la următoarea linie.

Var a = 4, b = 4, c = 8, d = 8; if((a == b) && (c == d)) document.write("a este egal cu b SI c este egal cu d"); document.write("Următoarea linie de cod");

If - else if - else declarație

După blocul if, pot exista unul sau mai multe blocuri else if, iar la sfârșit există un bloc else. Acest lucru este util atunci când trebuie să utilizați mai multe condiții.


Pentru o mai bună înțelegere, să luăm un exemplu din viața de zi cu zi. De exemplu, avem un anumit număr de prize. Dacă avem o singură priză în cameră, atunci putem conecta un singur dispozitiv, dacă există două prize, atunci putem conecta două dispozitive, iar dacă sunt mai multe, atunci putem conecta toate dispozitivele din casă la rețeaua electrică. .

Acum să trecem la programare.

priza Var = 2; // Numărul de prize din casă if(socket == 1)  document.write("

Putem conecta doar un singur dispozitiv

"); else if(socket == 2)( document.write("

Putem conecta doar două dispozitive

"); document.write("

De exemplu, televizor și laptop

"); )else( document.write("

Putem conecta toate dispozitivele din casa la reteaua electrica

"); }

În funcție de valoarea variabilei socket, unul sau altul bloc de cod va funcționa. După cum probabil ați înțeles deja, dacă socket-ul este egal cu 1, atunci primul bloc de cod va funcționa. Dacă socketul este egal cu 2, atunci al doilea bloc de cod va funcționa, iar dacă socketul are orice altă valoare (chiar și un număr negativ), atunci al treilea bloc de cod va funcționa.

Stenografie pentru dacă altceva

Notația scurtă poate fi folosită atunci când, în funcție de o anumită condiție, o variabilă poate primi una sau alta valoare.


De exemplu, dacă valoarea variabilei a este mai mare decât valoarea variabilei b, atunci în variabila x vom scrie următorul mesaj, „Variabila a este mai mare decât variabila b”, altfel vom scrie că „Variabila a este mai puțin decât variabila b.”

Var a = 50, b = 100, x; x = (a > b) ? "

Variabila a Mai mult variabila b

" : "

Variabila a Mai puțin variabila b

"; //Afișează rezultatul rezultat document.write(x);

Atât am vrut să vă spun în acest articol. Declarația condițională if-else este folosită în mai multe moduri în fiecare script, așa că este foarte important să o cunoașteți și să o înțelegeți. În articolul următor vă voi spune despre un alt caz de comutare a operatorului condiționat.

Salutare tuturor. Și astăzi vreau să vă spun despre condițiile dacă și altceva. Sunt sigur că aproape toți cei care citesc asta acum știu perfect despre ce vorbim. Ei bine, pentru toți ceilalți, le voi explica mai bine.
Și deci if este tradus din engleză ca „Dacă”, în timp ce else este altfel. Permiteți-mi să vă arăt imediat un exemplu și cred că totul va deveni imediat clar pentru mulți.


$a = 1;
dacă ($a == 1) (
ecou "a = 1";
) altfel (
echo „a nu este egal cu 1”;
} ?>

Cred că mulți au ghicit deja că rezultatul acestui exemplu va fi apariția „a = 1” pe ecran. Și totul pentru că atribuim valoarea 1 variabilei a chiar de la început. Dacă avem valoarea corectă între paranteze după if, atunci se execută scriptul situat în primele paranteze (). Altfel (altfel) Executați din alte paranteze, iată un alt exemplu.


$a = 2;
dacă ($a == 1) (
ecou "a = 1";
) altfel (
echo „a nu este egal cu 1”;
} ?>

Acest exemplu va arăta că a nu este egal cu unul. Dar, de fapt, acestea sunt structuri de bază, dar simple. PHP are, de asemenea, o opțiune mai compactă pentru scrierea condițiilor.

Rezultatul acestui exemplu va fi exact același ca în exemplele de mai sus. De asemenea, nu uitați de încă un design


dacă ($a == 1):?>
A noastră are din nou valoarea 1


Și acum un design mai complex
Voi începe chiar imediat cu exemple.


dacă ($a >= 0) (
dacă ($a == 0) (
?>

A-ul nostru este zero




A-ul nostru este mai mare decât zero


) altfel (
echo "Variabila noastra este mai mica decat zero=(";
}
?>

După cum puteți vedea, puteți pune și alte condiții în condiții, puteți crea oricâte dintre ele doriți.
Și iată un alt exemplu pentru tine.


dacă ($a == 0)(
echo „Variabila este nulă”;
) elseif ($a > 0 && $a<5) {
?>

Și mai mult decât zero, dar cu siguranță mai puțin de 5

= 5 || $a == -5)(
echo "Veți vedea acest test numai dacă A este mai mare sau egal cu 5. SAU!! Dacă A este egal cu -5";
)altfel(?>
Și veți vedea acest lucru dacă a este mai mic decât zero și, în același timp, NU egal cu -5.


De fapt, în ultimul exemplu din ultimul else nu există o astfel de condiție ca $a să nu fie egal cu -5. Doar că, dacă a este -5, atunci condiția de mai sus va fi îndeplinită și nu va avea timp să ajungă la cea de jos.

Și, de asemenea, dacă tot nu înțelegeți, condițiile care sunt scrise între paranteze folosesc operatori speciali, sunt discutate în alt articol; Dar, din fericire, nu sunt multe și le pot repet chiar aici.
Operatori logici care sunt utilizați în condiții

Egalitatea, a nu se confunda cu atribuirea (=), de exemplu $a = 1; - În acest caz, punem una în celula „a”, iar intrarea este ca $a == 1, la fel ca 1 == 1.

Nu egalitatea. if(1 != 2)(echo „Această condiție va funcționa cu siguranță deoarece 1 nu este egal cu 2”; )

|| - SAU. Apropo, dacă cineva introduce aceste 2 caractere dacă în layout-ul englezesc apasă Shift + forward slash (sub backspace).

0 || $a< 0){echo "Это условие сработает если А будет равняться например -15 ИЛИ например 23 "; }?>
Apropo, acest exemplu poate fi scris astfel:


&& - AND Cu acest operator logic, scriptul va fi executat numai dacă sunt îndeplinite ambele condiții.

0)( echo „Pentru aceasta, A nu trebuie să fie zero ȘI trebuie să fie mai mare decât zero”; )?>
Iată același exemplu

0 ? „Este mai mare decât zero” : „”?>
Tocmai ți-am spus cum să folosești operatorii logici, dar mai este un lucru! Ceea ce unii programatori uită de fapt.

$a = 1;
dacă($a)(
echo "Va fi executat pentru că avem $a și nu este gol. Dar dacă scriem $b în condiție, altfel va fi deja executat, deoarece nu avem $b =(";
)altfel(
echo „Vom avea întotdeauna prima condiție îndeplinită pentru că întotdeauna avem A”;
}?>
Concluzia este că atunci când se verifică condițiile, este returnat adevărat sau fals. Dacă te uiți la exemplul de sus. Nu există nicio cale să NU avem gol în condiția if. Orice gol sau dacă operatorul logic nu trece, se returnează false, în caz contrar se returnează true.

dacă($a = 1)(
echo "Va fi întotdeauna adevărat! Deoarece atribuirea variabilei "a" unei valori are loc direct în condiție, adică vom aloca una și abia atunci se va verifica dacă există ceva în variabila $a. Și desigur, dacă acum scoatem $a , atunci vom vedea „.$a;
)altfel(
echo „Nu vom ajunge niciodată aici=(”;
}?>
Presupun că voi încheia aici. Succes tuturor, amintiți-vă cel mai important lucru, acesta a fost PHP și, prin urmare, această secțiune de cod ar trebui să fie localizată în. Desigur, citiți blogul meu, în care vă voi spune cum să scrieți în continuare site-uri web și aplicații web grozave. Și chiar și cum nu doar să le scrieți, ci și cum să o faceți corect!