PST - Unit 5
PST - Unit 5
+-----------+ +-----------------+
Intrare --> Verificare -----> | Afi ș are Pară |
Număr Par/Impar sau impar | --> Ieşire
Proces Rezultat |
+-----------+ +-----------------+
Explicaț ie:
Aceasta este fluxul de date care reprezintă intrarea, care este numărul pe care doriț i să
verifică (de exemplu, "Număr" date).
Verificare proces par/impar: Acesta este procesul în care se efectuează calculul. Acesta
verifică dacă numărul introdus este par sau impar.
Afiș are rezultat par sau impar: Acest proces afiș ează rezultatul calculului,
indicând dacă numărul este par sau impar. Rezultatul este trimis ca date de ieș ire.
Vă rugăm să reț ineț i că, într-un scenariu din viaț a reală, această sarcină simplă ar fi de obicei
implementat ca o funcț ie sau câteva linii de cod într-un program mai degrabă decât folosind un DFD.
Diagrama fluxului de date sunt folosite mai frecvent pentru modelarea sistemelor ș i proceselor complexe
cu multiple intrări, ieș iri ș i interacț iuni.
Un diagramă de flux de date (DFD) este o reprezentare grafică sau vizuală utilizând un
un set standardizat de simboluri ș i notaț ii pentru a descrie operaț iunile unei afaceri prin date
miș care. Ele sunt adesea elemente ale unei metodologii formale, cum ar fi Sistemele Structurate
Metoda de Analiză ș i Proiectare (SSADM).
Caracteristicile DFD
Componentele DFD
Avantajele DFD
Ne ajută să înț elegem funcț ionarea ș i limitele unui sistem.
Este o reprezentare grafică care este foarte uș or de înț eles, deoarece ajută la vizualizare.
conț inuturi.
Diagrama fluxului de date reprezintă o diagramă detaliată ș i bine explicată a sistemului
componente.
Este utilizat ca parte a fiș ierului de documentaț ie a sistemului.
Diagrama fluxului de date poate fi înț eleasă atât de o persoană tehnică, cât ș i de una netehnică.
pentru că sunt foarte uș or de înț eles.
Dezavantajele DFD
Uneori, DFD poate confunda programatorii în ceea ce priveș te sistemul.
Diagrama fluxului de date durează mult timp pentru a fi generată, ș i de multe ori din această cauză
motivele pentru care analiș tii sunt refuzaț i să lucreze la acesta.
FUNCȚII
Definiț ie
O funcț ie poate fi definită ca un subprogram destinat să efectueze o sarcină specifică.
Într-un program C, o definiț ie a unei funcț ii va conț ine un nume, iar perechea de paranteze conț ine zero sau mai multe
parametrii ș i un corp. Parametrii folosiț i în paranteză trebuie declaraț i cu tip
iar dacă nu sunt declarate, vor fi considerate de tip întreg.
Tip întoarcere
Se referă la tipul de valoare pe care l-ar returna către partea apelată a programului. Poate
are vreo tipuri de date de bază precum int, float, char etc. Atunci când o funcț ie nu ar trebui
pentru a returna orice valoare, poate fi declarat ca tip void
Exemplu
funcț ie fără nume(- - - - - - - - - -);
int nume_functie( - - - - - - - - - - );
char funcț ia nume ( — - - - - - - );
Numele Funcț iei
Numele funcț iei poate fi orice nume care respectă regulile de sintaxă ale variabilei. A
numele funcț iei este relevant pentru funcț ionarea acesteia.
Exemplu
output( ); citeș te datele();
Argumente formale
Argumentele se numesc argumente formale (sau) parametri formali, deoarece acestea
reprezentaț i numele elementelor de date care sunt transferate în funcț ie din apelul
porț iunea programului.
Orice variabilă declarată în corpul unei funcț ii se spune că este locală acelei funcț ii,
alte variabile care nu au fost declarate fie ca argumente, fie în corpul funcț iei, sunt
considerat "globol" pentru funcț ie ș i trebuie definit extern.
Exemplu
int celMaiMare (int a, int b)
{
————————————
————————————
————————————
return( );
}
a, b sunt argumentele formale.
Corpul funcț iei este o instruire compusă care defineș te acț iunea ce trebuie să fie efectuată de funcț ie.
Ar trebui să includă una sau mai multe instrucț iuni de tip "return" pentru a returna o valoare apelantului
parte a programului.
Exemplu
int celMaiMare(int a, int b)
{
dacă ( a > b)
return(a); corpul funcț iei.
altfel
return(b);
}
Declaraț ia de returnare
Fiecare subprogram funcț ie în C va avea o instrucț iune de returnare. Această instrucț iune este utilizată în
funcț iile subprograme pentru a returna o valoare programului/functiei apelante. Această declaraț ie poate
pot apărea oriunde în corpul unei funcț ii ș i putem avea mai mult de o instrucț iune de returnare
în interiorul unei funcț ii.
Dacă nu se returnează nicio valoare din funcț ie către programul apelant, atunci nu este nevoie de
instructiunea return trebuie să fie prezentă în interiorul funcț iei.
CATEGORII DE FUNCȚII
O func ț ie, în func ț ie de faptul dacă argumentele sunt prezente sau nu ș i o valoare este
returnat sau nu.
O funcț ie poate aparț ine unuia dintre următoarele tipuri.
1. Funcț ie fără argumente ș i fără valori de returnare.
2. Funcț ie cu argumente ș i fără valori de returnare.
3. Funcț ie cu argumente ș i valori de returnare
Funcț ii avansate
a. Prototipuri de funcț ii
b. Apelarea funcț iilor prin valoare sau prin referinț ă
c. Recursie.
a. Prototipuri de Funcț ii
Func ț iile definite de utilizator pot fi clasificate în trei moduri pe baza formalită ț ii
argumentele transmise ș i utilizarea declaraț iei return.
O funcț ie este invocată fără a trece vreo argumente formale din partea apelantă
al unui program ș i, de asemenea, funcț ia nu returnează nici o valoare funcț iei apelante.
Nu există comunicare între porț iunea apelantă a unui program ș i o funcț ie apelată
bloca
Exemplu:
#include <stdio.h>
main()
{
void mesaj( ); Declaraț ia funcț iei
mesaj( ); Apelarea funcț iei
}
void mesaj( )
{
printf ("COLEGIUL JUNIOR AL GUVERNULUI \n");
HYDERABAD
}
Acest tip de funcț ii transmite câteva argumente formale unei funcț ii, dar funcț ia
nu returnează nicio valoare apelantului. Este o comunicare de date într-o singură direcț ie între un
apelarea porț iunii programului ș i blocul de funcț ii.
Exemplu
#include <stdio.h>
main()
{
void patrat(int);
printf ("Introduceti o valoare pentru n \n");
scanf ("%d", &n);
pătrat(n);
}
void patrat (int n)
{
int valoare;
valoare = n * n;
printf ("patratul lui %d este %d ",n,value);
}
C. FUNCȚIE CU ARGUMENTE Ș I VALOARE DE ÎNTOARCERE
Al treilea tip de funcț ie transmite câteva argumente formale către o funcț ie dintr-un apel.
o parte a programului ș i valoarea computerului este transferată înapoi apelantului. Datele sunt
comunicată între porț iunea apelantă ș i blocul de funcț ii.
APELAREA FUNCȚIILOR PRIN VALOARE SAU PRIN REFERINȚĂ
RECURSIUNE
Una dintre caracteristicile speciale ale limbajului C este suportul său pentru recursie. Foarte pu ț ine
limbajele de programare vor susț ine această caracteristică. Recursia poate fi definită ca procesul de
funcț ia prin care se poate apela singură. Funcț ia care se apelează singură din nou ș i din nou fie
direct sau indirect este cunoscut ca funcț ie recursivă.
Funcț ia normală este de obicei apelată de funcț ia main ( ) prin intermediul numelui său.
Dar, funcț ia recursivă va fi apelată de ea însăș i în funcț ie de satisfacerea condiț iei.
De exemplu,
main ( )
{
f1( ) ; ——— Funcț ie apelată de main
——————
——————
——————
}
f1( ) ; ——— Definirea funcț iei
{
——————
——————
——————
f1( ) ; ——— Funcț ie apelată de ea însăș i
}
În cele de mai sus, funcț ia principală ( ) a apelat o funcț ie denumită f1( ) invocând-o cu
numele său. Dar, în interiorul definiț iei funcț iei f1( ), există o altă invocare a funcț iei ș i aceasta
este funcț ia f1( ) din nou.
Cu ajutorul acestor funcț ii, utilizatorul poate deschide un fiș ier cu specificaț iile fiș ierului de date.
creează ș i scrie informaț ii în fiș ier ș i poate închide fiș ierul.
A. FUNCȚIA fopen()
Această funcț ie este utilizată pentru a deschide un fiș ier de date. În plus, această funcț ie returnează un pointer către un
fiș ier. Utilizarea funcț iei este
file pointer = fopen( nume_fisier, modul);
Unde pointerul de fiș ier este un pointer la un tip FILE, numele fiș ierului este nume
fiș ierul în care datele sunt stocate sau recuperate (ar trebui să fie închis între ghilimele duble) ș i
modul denotă tipul de operaț iuni care trebuie efectuate asupra fiș ierului (acest lucru trebuie de asemenea închis)
în cadrul ghilimelelor duble). Dar, înainte de a face această alocare, pointerul de fiș ier ș i fopen() ar trebui
să fie declarate ca variabile de tip pointer FILE astfel:
SEMNIFICAȚ IA MODULUI
B. FUNCȚIILE fclose ()
Fi ș ierele care sunt deschise ar trebui închise după toate opera ț iile dorite.
efectuat pe el. Acest lucru poate fi realizat prin această funcț ie. Utilizarea acestei funcț ii este:
fclose (pointer de fiș ier);
Unde pointerul de fiș ier este valoarea returnată a funcț iei fopen().
Exemple:
fclose (fiș ier de intrare);
1. func ț iile getc ( ): această func ț ie este utilizată pentru a citi un singur caracter dintr-o dată dată
fiș ier, ori de câte ori un fiș ier este menț ionat de un pointer de fiș ier. Utilizarea acestei funcț ii este
Funcț ia fscanf(): Această funcț ie este folosită pentru a citi date formatate dintr-o sursă specificată.
fiș ier. Utilizarea generală a acestei funcț ii este
fscanf (f ptr, "Ș ir de control", & list);
Exemplu
Funcț ia putc( ): Această funcț ie este folosită pentru a scrie un singur caracter într-un fiș ier referit
prin pointerul de fiș ier. Utilizarea acestei funcț ii este
putc (ch, pointer de fiș ier)
Unde
ch - caracterul care trebuie scris
pointer de fiș ier - un pointer de fiș ier către fiș ierul care primeș te caracterul.
Funcț ia fprintf (): această funcț ie este utilizată pentru a scrie date într-un format într-un fiș ier dat.
Informaț iile specificate sunt scrise în fiș ierul specificat.
Exemplu
fprintf (fisier ieș ire, "%d %f", de bază, brut);