1.Скласти програму для обчислення
#include
#include
void vvod (float a[], int n, char q);
float sum (float b[], int m);
void main()
{
float x[5],y[4], z[7], c;
vvod(x,5,'x');
vvod(y,4,'y');
vvod(z,7,'z');
c=sum (x,5)/sum (y,4)+log(sum (z,7));
printf ("c=%f\n", c);
}
Слайд 2
void vvod(float a[],int n,char q)
{
int i;
printf("масив %c:\n",q);
for (i=0;i {
printf("%c[%i]=",q,i);
scanf("\n%f",&a[i]);
}
}
float sum (float b[],int m)
{
int k; float r=0;
for (k=0;k r+=b[k];
return(r);
}
Слайд 3
2. Для трьох одновимірних масивів
різної довжини знайти
найбільший елемент, найменший елемент та їх
номери,
використовуючи для цього функцію. До неї передаємо масив
та кількість елементів, а отримуємо максимальний і
мінімальний елементи та їх номери.
#include
void vvod(int a[],int n,char q);
void fn(int a[],int n,int *max,int *min,int *n1,int *n2, char k);
void main()
{
int x[3], y[4], z[5], max, min, n1, n2;
vvod(x, 3, 'x'); vvod(y, 4, 'y'); vvod(z, 5, 'z');
fn(x, 3, &max, &min, &n1, &n2, 'x');
fn(y, 4, &max, &min, &n1, &n2, 'y');
fn(z, 5, &max, &min, &n1, &n2, 'z');
}
Слайд 4
void vvod (int a[],int n,char q)
{
int i;
printf ("масив %c:\n", q);
for (i=0;
i { printf ("%c[%i]=", q, i);
scanf ("\n%i", &a[i]);
}
}
void fn (int a[], int n, int *max, int *min, int *n1, int *n2, char k)
{
int i;
*min=а[0]; *max= а[0];
*n1=0; *n2=0;
Слайд 5
for (i=0; i*max)
{ *max=a[i];
*n1=i;
}
else if ( a[i]<*min)
{ *min=a[i];
*n2=i; }
printf ("макс. елем. %c:max=%i, його номер
n2=%i \n мінім. елем. %c:min=%i,
його номер n2=%i \n", k, *max, *n1, k,
*min, *n2);
}
Слайд 6
3. Передача двовимірного масиву розміром mn
#include
int sum (int n, int m,
int *p)
{
int i,j,s=0;
for(i=0;i for(j=0;j s+=p[i*m+j];
return (s); }
void main( )
{
int s1=0;
int a[2][3]={{1,2,7},{3,4,5}};
int *p;
p=(int*) a;
s1= sum(2,3,p);
printf(«s1=%i \n», s1);
}