Diferență între revizuiri ale paginii „SDA Lucrarea 1”
De la WikiLabs
Jump to navigationJump to search (Pagină nouă: == Exercițiul 1 == Realizați un program care să citească de la tastatură o lungime '''n''', apoi '''n''' numere care să fie stocate într-un vector. Apoi se va citi de la tast...) |
|||
Linia 58: | Linia 58: | ||
Următorul program calculează factorial-ul unui număr, dar are o eroare. Utilizați debugger-ul grafic pentru a identifica problema. | Următorul program calculează factorial-ul unui număr, dar are o eroare. Utilizați debugger-ul grafic pentru a identifica problema. | ||
+ | |||
+ | <syntaxhighlight lang="c"> | ||
+ | #include<stdio.h> | ||
+ | |||
+ | int factorial(int n){ | ||
+ | return n * factorial(n - 1); | ||
+ | } | ||
+ | |||
+ | int main(){ | ||
+ | |||
+ | int number; | ||
+ | scanf("%d", &number); | ||
+ | |||
+ | printf("n! = %d\n", factorial(number)); | ||
+ | |||
+ | return 0; | ||
+ | } | ||
+ | </syntaxhighlight> |
Versiunea de la data 5 martie 2015 22:44
Exercițiul 1
Realizați un program care să citească de la tastatură o lungime n, apoi n numere care să fie stocate într-un vector. Apoi se va citi de la tastatură o valoare v și se vor afișa pe ecran de câte ori apare valoarea v în vector.
Exercițiul 2
Modificați programul de la exercițiul 1 astfel încât citirea datelor și cautarea valorii în vector să fie scrise în funcții diferite.
Exercițiul 3
Modificați programul de la exercițiul 2 astfel încât cele două funcții și main să se afle în fișiere separate.
Exercițiul 4
Următorul program implementează o sortare de vector dar are o eroare. Utilizați debugger-ul grafic pentru a identifica problema.
#include <stdio.h>
int main(){
int vectorLength;
printf("Length = ");
scanf("%d", &vectorLength);
int vector[vectorLength];
int i;
for(i=0; i<vectorLength; i++){
printf("v[%d] = ", i);
scanf("%d", &vector[i]);
}
int temp;
int done;
do{
done = 1;
for(i=0; i<vectorLength; i++){
if(v[i] > v[i + 1]){
temp = v[i];
v[i] = v[i + 1];
v[i + 1] = temp;
done = 0;
}
}
}while(!done);
for(i=0; i<vectorLength; i++){
printf("%d, ", v[i]);
}
printf("\n");
return 0;
}
Exercițiul 5
Următorul program calculează factorial-ul unui număr, dar are o eroare. Utilizați debugger-ul grafic pentru a identifica problema.
#include<stdio.h>
int factorial(int n){
return n * factorial(n - 1);
}
int main(){
int number;
scanf("%d", &number);
printf("n! = %d\n", factorial(number));
return 0;
}