Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Массивы
тип имя[кол-во эл-тов]
int a[5];
a[0] a[1] a[2] a[3] a[4]
float x[7];
x[0] x[1] x[2] x[3] x[4] x[5] x[6]
const N=5; //int N=5;ошибка
int a[N];
float y[2*N];
Инициализация
массива
1.
int a[5]={4,8,2,6,1};
//a[0]=4 a[1]=8 a[2]=2 ….
int a[5]= {4,8,2};
// ошибки нет, но a[3] и a[4] не
// определены
float y[ ]={5.6,7.8,1.2,4.3}
//верно
2.
#define N 10
int main()
{
float x[N];
int i;
i=0;
while(i<N) //i ≤ N ошибка
{printf("\n x[%d]=",i);
scanf("%f",&x[i]);
i++;
} //Ввод закончен
На экране:
x[0]=
x[1]=
x[2]=
3.
ai = 1/(2i+1)
const N=20;
float a[N];
for(int i=0; i<N; i++)
a[i]=1.0/(2*i+1);
4. rand()
#include<stdlib.h>
……………….
……………….
for(int i=0; i<N; i++)
a[i]=rand();
………………….
………………….
0≤ a[i]≤RAND_MAX
max (int) = 32767
0÷ 10 rand()%10
0÷100 rand()%100
0÷1 rand()%10/10.0
Пример.
x[0] x[1] x[2] x[3] ...………
xmin
xmin=x[0]
imin=0
да
x[i] <xmin
Цикл по i
нет
xmin = x[i]
imin=i
#include<stdio.h>
#define N 10
int main()
{
float x[N]; // массив x
int i; // индекс массива
float xmin; //минимальное
//значение
int imin; //номер
//миним. значения
//Ввод массива x[N]
……………………
xmin=x[0];
imin=0;
for( i=1; i<N; i++)
{if (x[i]<xmin)
{xmin=x[i];imin=i;}
}
printf("xmin=%f imin=%d",
xmin,imin);
return 0;
}
вывод max
xmin=3.6 imin=5
или
printf("min=x[%d]=%f",
imin,xmin);
min=x[5]=3.6
Пример.
xmax , если xi ≥ (xmax+ xmin)/2
yi =
xmin , если xi < (xmax+ xmin)/2
#include<stdio.h>
#define N 10
int main()
{
float x[N], y[N];
int i;
float xmax, xmin,gr;
//Ввод массива x[N]
for( i=0; i<N; i++)
{printf("\n x[%d]=",i);
scanf("%f",&x[i]);
}
//Поиск xmax и xmin
xmax=x[0]; xmin=x[0];
i=1;
while(i<N)
{if(x[i]>xmax) xmax=x[i];
if(x[i]<xmin) xmin=x[i];
i++;
}
gr=(xmax+xmin)/2;
printf("\n gr=%8.2f",gr);
//Формирование нового
//массива y
for( i=0; i<N; i++)
if(x[i]>=gr) y[i]=xmax;
else y[i]=xmin;
/*
Вывод на экран значений двух
массивов
*/
printf("\n i x y");
for( i=0; i<N; i++)
printf("\n%3d %6.2f 6.2f",
i,x[i],y[i]);
return 0;
}
Новые функции ввода/вывода
cin >> - ввод
cout << - вывод
#include <iostream.h>
cout << "Введи x " ;
cin >> x ;
cout<<"z="<<z<<"max="<<max<<endl;
#include <iomanip.h>
setw(число)
setprecision(число)
i=25 x=6.743
cout<<setw(5)<<i<<setw(10)<<x ;
˛˛˛25 ˛˛˛˛˛6.743
y=41.97654
cout<< setw(10)<<
setprecision(5)<<y<<endl ;
˛˛˛˛˛41.98