Documente Academic
Documente Profesional
Documente Cultură
DARE DE
SEAMA
Realizarea programelor in
Limbajul C
Chiinu 2015
Chiinu 2015
printf("Introdu Linii=>");
scanf("%d",&n);
printf("Introdu Coloane=>");
scanf("%d",&n);
printf("Matricea=>\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
for(i=0;i<n;i++)
{ printf("\n");
for(j=0;j<n;j++)
printf("%4d",a[i][j]);}
printf("\nCalculam Suma el.de pe diag.princ.(S1) si suma elem.de pe diag.sec.(S2)\n");
{for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(i==j) s1+=a[i][j];}
printf("\nS1=%d",s1);
{ for(i=0;i<n;i++)
s2+=a[i][n-1-i];
printf("\nS2=%d",s2);}
return 0;}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(i==j) a[i][j]=0;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(i+j==n-1) a[i][j]=0;
printf("\n Matricea finala=>");
for(i=0;i<n;i++) { printf("\n");
for(j=0;j<n;j++)
printf("%4d",a[i][j]);} return 0; }
Functii
Conditia: De afisat elementele pare de pe locuri impare intr-un vector.
#include <stdio.h>
void introd(int n,int v[]);
void afis(int n,int v[]);
void pare(int n,int v[]);
int main()
{int n,v[10];
printf("Introduceti dimensiunea vectorului==> ");
scanf("%d",&n);
printf("Introduceti elementele vectorului==>\n");
introd(n,v);
afis(n,v);
pare(n,v);
return 0; }
void introd(int n,int v[])
{int i;
for(i=0;i<n;i++)
scanf("%d",&v[i]);
}
void afis(int n,int v[])
{int i;
for(i=0;i<n;i++)
printf("%i",v[i]);}
void pare(int n,int v[])
{ int i;
for(i=0;i<n;i++)
if (i%2!=0&&v[i]%2==0)
printf("\nPozitia impara==>v[%d]\nElementul par de pe pozitia impara==>%d",i,v[i]);}
printf("\nF3=%f",d3);
q=d1-d2+d3;
printf("\nRezultat=%f",q);
getch();}
Functie in functie
#include<stdio.h>
#include<conio.h>
#include<math.h>
float F2(float t)
{ float r;
r=t-5;
return r;
}
float F1(float b,float t)
{ float rez;
rez=b+t/F2(t);
return rez;
}
main()
{ float x,y,d1,d2,d3,q;
printf("Indtrodu X=");
scanf("%f",&x);
l1: printf("Introdu Y=");
scanf("%f",&y);
if((y-5)==0){printf("Introduceti va rog alta valoare !=0 \n"); goto l1;}
d1=F1(x,y+6);
d2=F1(pow(x,3)+y,cos(x));
d3=F1(5,y);
printf("\nF1=%f",d1);
printf("\nF2=%f",d2);
printf("\nF3=%f",d3);
q=d1-d2+d3;
printf("\nRezultat=%f",q);
getch();}
Pointeri
Conditia: De realizat programul cu functii si pointeri
#include<stdio.h>
#include<conio.h>
#include<math.h>
void Fun(float *b,float *t)
{
*b=*b+*t;
*t=*b-*t;
}
main()
{ float x,y,d1,d2,d3;
printf("Indtrodu X=");
scanf("%f",&x);
l1: printf("Introdu Y=");
scanf("%f",&y);
if( (y+5)==0 || (pow(y,3)+1)==0 ) {printf("Introduceti va rog alta valoare !=0 \n"); goto l1;}
Fun(&x,&y);
d1=x/y+5;
d2=pow(x,2)/pow(y,3)+1;
d3=d1-d2;
printf("d1=%f",d1);
printf("\nd2=%f",d2);
printf("\nRez=%f",d3);
getch();}
Conditia: De afisat maximul,minimul si diferenta lor sub fiece coloana a unei matrici
#include<stdio.h>
#include<limits.h>
#define Fi for(i=0;i<n;i++)
#define Fj for(j=0;j<m;j++)
void introd(int n,int*v,int m);
void afis(int n,int*v,int m);
void diferenta(int n,int *v,int m);
int main()
{ int n=3,m=3,*v;
v=(int*)malloc(n*m*sizeof(int));
printf("Introdu Linii=>");
scanf("%d",&n);
printf("Introdu Coloane=>");
scanf("%d",&m);
introd(n,v,m);
afis(n,v,m);
return 0;}
//Pentru matrice 3*3//
void introd (int n,int*v,int m){
int i,j;printf("Introdu matricea==>\n");
Fi Fj
scanf("%d",v+i*m+j);}
void afis(int n,int*v,int m)
{ int i,j; printf("\nCalculam:Max de pe poz.imp,Min de pe poz.pare si diferenta lor,pe coloane=>\n");
Fi { printf("\n"); Fj
printf("v[%i]=%d
",i,*(v+i*m+j));}diferenta(n,v,m);}
void diferenta(int n,int*v,int m)
{int j,i,k=0;
int*a = (int*)malloc(n * 3 * sizeof(int)); Fj {
int min=INT_MAX;
int max=INT_MIN; Fi
{
if (*(v+i*m+j)>max&&i%2!=0)
{ max=*(v+i*m+j);}
if (*(v+i*m+j)<min&&i%2==0)
{min=*(v+i*m+j);}
}
a[k] = max;
k++;
a[k] = min;
k++;
a[k] = max - min;
k++;}
printf("\n");
for(k=0;k<n*3;k+=3)
{ printf("Max=>%i\t\t",a[k]);}
printf("\n");
for(k=1;k<n*3;k+=3)
{ printf("Min=>%i\t\t",a[k]);}
printf("\n");
for(k=2;k<n*3;k+=3)
{ printf("Dif=>%i\t\t",a[k]);}
printf("\n");
free(a);
a = 0;
getch();
Siruri de caractere
Problema 260: De afisat sirul pin la caracterul : , dupa caracterul : si intre caracterele : ,
realizind programul doar cu ajutorul vectorilor.
#include <stdio.h>
#include <conio.h>
#define NL puts("");
void poz(char d[])
{ printf("Pozitia=> ");for(int i=0,j=0;d[i]!='\0';i++,j++){if(j==10)j=0;printf("%i",j);}}
main()
{ char s[30]; char v[100];
int i=0,j=0,nr=0,f=0,y=0,p=0;
char w=':';
puts("Introduce-ti un sir ce ar contine cel putin un caracter ':' =>");
l1:y=0;p=0;gets(s);
NL
poz(s);
printf("\nSirul==> %s",s);
NL
printf("\nSirul pina la ':'==> ");
while (s[i]!=w) {putchar(s[i]);i++;}
i++;j++;
f=i;
printf("\nSirul dupa ':'==> ");
for(i=f;s[i]!='\0';i++) putchar(s[i]);
puts("\nSirul dintre caracterele ':' =>");
for(i=f;s[i]!=w;i++) putchar(s[i]);
for(i=0;s[i]!='\0';i++) if(w==s[i]) nr++;
<string.h>
Conditia:
1) 3 var. car. : s1=numele,s2=prenumele,s3-patronimicul
2) Sa se concatineze in s1: num+prenum
3) Cate vocale sunt in S1 ?
4) Sa se inverseze patronimicul si-l concatinam cu S1
5) Sa se calculeze numarul consoanelor
6) Sa se copieze in s4 primele 3 car.din S1
7) Sa se compare S4 cu S1
8) Sa se compare primele 3 caractere
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main()
{ int i=0,j=0,nr=0,n=0;
char s1[100]="sandu ",s2[100]="cristian ",s3[100]="ghenadie ",s4[100],s5[100]="euio";
printf("1) Numele=>%s ",s1); printf("\tPrenumele=>%s",s2);printf("\tPatronimicul=>%s\n",s3);
getch();
strcat(s1,s2);
printf("\n2) %s",s1);
getch();
for(i;s1[i];i++) if(s1[i]=='a' || s1[i]=='e' || s1[i]=='o' || s1[i]=='u' || s1[i]=='i') nr++;
printf("\n3) In sirul s1=> %s ,numarul de vocale este=> %i",s1,nr);
getch();
strrev(s3);
strcat(s1,s3);
printf("\n4) %s",s1); getch();
for(i=0;s1[i];i++) if(s1[i]>97&&s1[i]<123) {if(!(strchr(s5,s1[i]))) n++;}
printf("\n5) In sirul s1=> %s ,numarul de consoane este:=> %i",s1,n);getch();
strncpy(s4,s1,3);s4[3]=NULL;
printf("\n6) Sirul s4 =>%s",s4);getch();
if(strcmp(s1,s4)==0) printf("\n7) Sirurile s4 si s1 coincid");else printf("\n7) Sirurile s4 si s1 nu coincid");getch();
if(strncmp(s1,s4,3)==0) printf("\n8) Primele 3 caractere din s4 si s1 coincid"); else printf("\n8) Primele 3 caractere
din s4 si s1 nu coincid");getch(); }}
Structuri