infoanul1.files.wordpress.com … · Web viewcu un numar negativ - si apoi scrie daca toate...
Click here to load reader
Transcript of infoanul1.files.wordpress.com … · Web viewcu un numar negativ - si apoi scrie daca toate...
P1)
#include <stdio.h>
#include <conio.h>
typedef struct {
int re,Re;
} Cex;
Cex c;
int main () {
system("cls");
printf("%s","ce1= ");
scanf("%d", &c.re);
printf("%s","ce2= ");
scanf("%d",&c.Re);
printf ("%s%d%s%d","ce1= ", c.re," si ce2= ",c.Re);
getch(); /*nu e ansi c*/
return 0;
}
P2)
#include <stdio.h>
#include <stdlib.h>
int main () {
clrscr(); /*...*/
printf("%i\n",44);
printf("%i\n",-23);
printf("%i\n",0xA4);
printf("%i\n",0Xff);
printf("%f\n",2.75);
printf("%f\n", 3e6);
printf("%f\n",-2e-2);
getch(); /*...*/
return 0;
}
P3)
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
char c;
system("cls");
c=getchar();
printf("%d",c);
return 0;
}
P4)
#include <stdio.h>
#include <stdlib.h>
int fact(int nr)
{
int produs=1;
if (nr==0) return 1;
else {
produs=nr;
while (nr>1) {
nr=nr-1;
produs=produs*nr;
}
}
return produs;
}
int main() {
int nr;
system("cls");
printf("Tastati numarul pentru care se calculeaza factorialul:");
scanf("%d",&nr);
printf("Factorialul(%d) = %d\n",nr,fact(nr));
getch(); /*...*/
return 0;
}
P5)
/* Se considera un sir de valori care reprezinta salarii. Sa se precizeze
modul in care se realizeaza plata acestora in bancnote de 1,5,10,50,100
si 500 lei- exercitiu pentru tipul intreg*/
#include <stdio.h>
#include <stdlib.h>
int main() {
int sal[4],val;
int i;
system("cls");
sal[0]=1040;
sal[1]=988;
sal[2]=545;
sal[3]=0;
i=0;
val=0;
while(sal[i] != 0) {
printf("suma de %d lei se plateste in \n",sal[i]);
val=sal[i]/500;
if(val == 1)
printf(" 1 bancnota de 500 lei");
else
printf("%d bancnote de 500 lei ",val);
val=sal[i] % 500;
printf(" si %d bancnote de 100 lei ",val/100);
val=val % 100;
if((val/50) == 1)
printf(" 1 bancnota de 50 de lei");
else
printf(" si % d bancnote de 50 de lei ",val/50);
val=val%50;
if(val/10 == 1)
printf(" 1 bancnota de 10 lei");
else
printf(" si %d bancnote de 10 lei ",val/10);
val=val% 10;
printf(" si %d bancnote de 5 lei", val/5);
val%=5;
printf(" si %d bancnote de 1 leu",val);
printf("\n\n");
i++;
}
getchar();
return 0;
}
/* sa se completeze programul si cu testarea pentru 100 lei, in cazul
unei singure bancnote, sa nu se mai afiseze valorile 0 daca nu se
platesc bancnotele respective si sa se dea posibilitate utilizatorului sa
introduca de la tastatura valoarea salariului*/
P6)
/*Program in C care utilizeaza functii ca argument si/sau rezultat
real-exercitiu pentru tipul real*/
#include <stdio.h>
#include <math.h>
# include <stdlib.h>
int main() {
double x;
double rot_s, rot_j, absolut,intreg,frac;
system("cls");
printf("Numarul este: ");
scanf("%lf",&x);
while (x!=0.0) {
rot_s=ceil(x);
rot_j=floor(x);
absolut=fabs(x);
frac = modf(x, &intreg);
printf("Numarul %lf rotunjit in jos este %lf\n\n",x,rot_j);
printf("Numarul %lf rotunjit in sus este %lf\n\n",x,rot_s);
printf("Valoarea absoluta a numarului %lf este %lf\n\n",x,absolut);
printf("Partea intreaga a numarului %lf este %lf\n\n",x,intreg);
printf("iar partea fractionara este %lf \n\n",frac);
printf("Numarul este: ");
scanf("%lf",&x);
}
return 0;
}
P7)
#include <stdio.h>
#include <stdlib.h>
int main() {
char ch;
system("cls");
ch='a';
while (ch!='0') {
printf("Introduceti un caracter: ");
scanf("%c", &ch);
if (ch<'c')
printf("Caracterul introdus a fost %c\n", ch);
else printf("E mai mare decit 'c'\n");
/* flushall();*/
}
return 0;
}
P8)
/*testarea unui caracter introdus de la tastatura - exercitiu pentru tipul
caracter*/
#include <stdio.h>
#include <stdlib.h>
int main() {
char ch;
system("cls");
printf(" Tastati un caracter: ");
scanf("%c",&ch);
printf(" Caracterul introdus");
if (('0'<=ch) && (ch<='9')) printf(" este cifra.");
else
if (('a'<=ch) && (ch<='z')) printf(" este litera mica.");
else
if (('A'<=ch) && (ch<='Z')) printf(" este litera mare.");
else printf(" nu este nici litera nici cifra.");
getch();
return 0;
}
/*
- scrieti din nou programul dupa ce parcurgeti instructiunea 'switch',
- scrieti din nou programul permitand introducerea mai multor caractere
fara a iesi din program
*/
P9)
/*Programul citeste un sir de numere intregi pozitive - sirul se termina
cu un numar negativ - si apoi scrie daca toate numerele sunt mai mici decat
100 (MICI), daca exista numere intre 100 si 10000 (MARI) sau daca exista
si numere peste 10000 (FOARTE MARI) - exercitiu pentru tipul logic*/
#include <stdio.h>
#include <stdlib.h>
typedef int boolean;
# define true (1)
# define false (0)
int main() {
int numar;
boolean mare, foartemare;
system("cls");
mare=0;
foartemare=0;
numar=1;
printf("Pentru terminarea programului se introduce un numar negativ\n");
while (numar>0) {
printf("Numar nou ");scanf("%d",&numar);
if (numar>100) mare=true;
if (numar>10000) foartemare=true;
}
if (!mare) printf("Toate numerele sunt mici");
else
if ((mare)&&(!foartemare))
printf("Sunt numere mari, dar nu foarte mari");
else
printf("Sunt si numere foarte mari");
getch();
return 0;
}
/* completati programul cu un meniu care sa permita reluarea
introducerii numerelor */
P10)
/* program pentru testarea numerelor prime introduse de la
tastatura - exercitiu pentru tipul logic */
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
typedef int boolean;
# define true (1)
# define false (0)
int main() {
int i,n;
boolean prim;
system("cls");
printf("n=");
scanf("%d",&n);
prim=true;
for(i=2;i<=(sqrt(n));i++)
if(n % i == 0) prim=false;
if(prim==true) printf("Numarul e prim\n");
else printf("Numarul nu e prim\n");
getch();
return 0;
}
/* sa se rescrie programul completand cu citirea in bucla a
numerelor pana la tastarea cifrei 0; in final se vor afisa
numerele si se va preciza pentru fiecare daca este prim sau nu*/