RAPORT
Lucrare de laborator Nr.1 la Programarea Calculatoarelor
A efectuat:
A verificat:
Chiinu 2012
Lucrare de laborator Nr.1
Tema: Programarea algoritmilor cu structur liniar. Scopul lucrrii: Acumularea deprinderilor practice de elaborare i programare a alogoritmelor de calcul liniare. Cunoasterea tipurilor de date. Deprinderea cu mediul de dezvoltare Turbo C++ , scrierea i testarea programelor n limbajul C. Mediul de dezvoltare Turbo C++: Mediul integrat de dezvoltare Turbo C++ ( BorlandC++ ) permite editarea, compilarea, executia si depanarea programelor scrise in limbajele C si C++. Mediul contine un editor, un compilator, un editor de legaturi, un depanator. Combinatia de taste al mediului Turbo C++: F1 - informatii ajutatoare. F2 - salveaza pe disc fisierul editat. F6 - trecerea ( activarea ) in urmatoarea fereastra. lt+F1 - fereastra de informatii anterioara. Alt+F3 - inchiderea ferestrei curente. Alt+F4 - permite urmarirea valorii unor variabile. Alt+F5 - vizualizarea ecranului cu rezultate. Alt+F9 - compilare. Alt+nr- activarea ferestrei cu numarul precizat Alt+E - edit. Alt+S - search. Alt+R - run. Alt+C - compile. Alt+D - debug. Alt+X - paraseste mediul integrat. Alt+Litera selectia unui submeniu. Alt+nr- activarea ferestrei cu numarul precizat. Ctrl+F1 - informatii despre obiectul ( cuvantul ) pe care este pozitionat cursorul. Ctrl+F2 - incheie sesiunea de depanare curenta. Ctrl+F3 - afiseaza intr-o fereastra sub forma de meniu cu bara de selectie. Ctrl+F4 - permite evaluarea si, optional, modificarea valorii unei expresii. Esc - inchide fereastra ajutatoare.
Tipuri de date in limbajul C. char pastreaza un singur caracter, cum ar fi literele de la A la Z int pastreaza numere intregi cum ar fi 1, 2, 3 precum si numere negative. float pastreaza numere reale in format cu virgula mobila in simpla precizie cum ar fi 3,14 sau -54,1343.
double pastreaza numerele reale in format cu virgula mobila, in dubla precizie. Se utilizeaza pentru numerele foarte mari sau foarte mici. Formularea condiii problemei (sarcina de lucru): De calculat valorile variabilelor indicate dup formulele de calcul i datele iniiale indicate. De introdus datele iniiale de la tastatur. De afiat rezultatele obinute pe ecran. Varianta 12: Formulele de calcul:
P= Q=2y+7x
+e-y+ +2cx
Valorile datelor initiale: x=2 y=1.1 c=5.6 Mersul lucrrii: Noiuni principale din teorie i metode folosite: Algoritmul este un set finit de operatiuni (actiuni) pentru a rezolva problema data. Exista mai mult forme de reprezentare a algoritmilor: - forma naturala, - forma grafica, - forma pseudocod, - program scris in limbaj de programare. Algoritm cu structur liniar este caracterizata prin absena operaiuni de decizie. Structura unui program simplu in limbajul C este urmatoarea: - directive preprocesorului; - antetul functiei main;corpul functiei main. Analiza datelor a) date de intrare: x,y,c - variabile simple de tip real, de introdus de la tastatur. b) date de ieire: P,Q - variabile simple de tip real, de afiat pe ecran. c) date intermediare: nu sunt.
Clrscr()
x,y,c
P= ctgx^2+y+e(-y)+ 10+(x+y)2/3
Q=2y+7x(lnyx+sinx)/ (|x-6y|)+2cx
Rezultatele obtinute:
Q=,Q
P=,P
getch()
Stop
Concluzii: 1. Algoritmii cu structur liniar pot fi folosite pentru calcularea expresiilor matematice. 2. Au fost obinute primele deprinderi pentru scriere unui program simplu n limbajul C.
Calcule cu tipuri de variabile: Analiza datelor a) date de intrare: de introdus de la tastatur: a - variabila de tip int; b - variabila de tip short; c - variabila de tip long; d - variabila de tip float; e - variabila de tip double; str - variabila de tip char; b) date de ieire: Int + Int =a+a; Short + Short= b+b; Long + Long = c+c; Float + Float =d+d; Double + Double = e+e; Int + Short = a+b; Int + Long = a+c; Int + Float = a+d; Short + Long = b+c; Short + Float = b+d; Int * Int = a*a; Short * Short = b*b; Long * Long = c*c; Float * Float = d*d; Double * Double = e*e; Int * Short = a*b; Int * Long = a*c; Int * Float = a*d; Short * Long = b*c; Short * Float = b*d; Int - Int = a-a; Double - Float = e-d; Int - Short = a-b; Int - Long = a-c; Int - Float = a-d; Short - Long = b-c; Short - Float = b-d; Float / Float =d/d; Double / Float = e/d;
Textul programului in limbajul C #include<stdio.h> #include<conio.h> #include<math.h> main () { clrscr(); int a, j; short b; long c; float d, m,n; double e; char str[25]; printf("Introdu o variabila de tip Int: "); scanf("%d", &a); printf("Introdu o variabila de tip Short: "); scanf("%d", &b); printf("Introdu o variabila de tip Long: "); scanf("%d", &c); printf("Introdu o variabila de tip Float: "); scanf("%f", &d); printf("Introdu o variabila te tip Double: "); scanf("%lf", &e); printf("Introdu un sir: "); scanf("%s", str); printf("\n\n\n\n\n"); printf("***********************\n"); printf("Int + Int = %d \n", a+a); printf("Short + Short = %d \n" , b+b); printf("Long + Long = %d \n" , c+c); printf("Float + Float = %f \n" , d+d); printf("Double + Double = %lf \n", e+e); printf("Int + Short = %d \n", a+b); printf("Int + Long = %d \n", a+c); printf("Int + Float = %f \n", a+d); printf("Short + Long = %d \n", b+c); printf("Short + Float = %f \n", b+d); printf("************************\n");
printf("Int * Int = %d \n", a*a); printf("Short * Short = %d \n" , b*b); printf("Long * Long = %d \n" , c*c); printf("Float * Float = %f \n" , d*d); printf("Double * Double = %lf \n", e*e); printf("Int * Short = %d \n", a*b); printf("Int * Long = %d \n", a*c); printf("Int * Float = %f \n", a*d); printf("Short * Long = %d \n", b*c); printf("Short * Float = %f \n", b*d); printf("************************\n"); printf("Int - Int = %d \n", a-a); printf("Double - Float = %lf \n", e-d); printf("Int - Short = %d \n", a-b); printf("Int - Long = %d \n", a-c); printf("Int - Float = %f \n", a-d); printf("Short - Long = %d \n", b-c); printf("Short - Float = %f \n", b-d); printf("**********************\n"); printf("Float / Float = %f \n" , d/d); printf("Double / Float = %lf \n", e/d); printf("Float / Double = %lf \n", d/e); printf("Short / Float = %f \n", b/d); printf("*********************n"); printf("Ati introdus sirul: %s \n", str); getch(); } Datele de intrare(a,b,c,d,e,str):
a=13 b=7 c=22 d=22.22 e=13.13
Rezulatatele obtinute:
Analiza rezultatelor si concluzii: 1. Am nvtat tastele fierbinti din mediul Turbo C , cu care ne este mai usor si mai comod de creat un program; 2.Am analizat erorile aparute in timpul executiei; 3.Am lucrat cu diferite tipuri de date; 4. Am obinut primele deprinderi pentru scriere unui program simplu n limbajul C.