Жиымдармен, көпөлшемді жиымдармен жұмыста көрсеткіштерді қолдану
N санындағы ең үлкен цифрды табу.
Есептің шешуі:
С++ тіліндегі бағдарлама мәтіні:
#include
void main ()
{
const int M=10;
int i,a[M],max;
long int N;
cin>>N;
if(N<0)N=-N;
for(i=0;i<=M;i++)
{
a[i]=N%10;
N=N/10;
}
max=a[0];
for(i=0;i<=M;i++)
{
if(max<=a[i])max=a[i];
}
cout<<”\n”<
}
Бағдарламаны тестілеу нәтижесі:
Динамикалық жиымдар
М×М өлшемді {aij} массиві берінлген. табу керек
Есептің шешуі:
#include
void main ()
{
const int M=3;
int i,j,a[M][M],b[M],S,P;
for(i=1;i<=M;i++)
for(j=1;j<=M;j++)
cin>>a[i][j];
for(j=1;j<=M;j++)
{
P=1;
for(i=1;i<=M;i++)
P=P*a[i][j];
for(j=1;j<=M;j++)
b[j]=P;
}
S=0;
for(j=1;j<=M;j++)
S=S+b[j];
cout<<”\n”<
}
Бағдарламаны тестілеу нәтижесі:
Бірөлшемді, көпөлшемді жиымдар және көрсеткіштерді қолданып бағдарламалар құру
1. N студенттер туралы информация бар ең үлкен стипендия алатын студенттің фамилиясын анықтау қажет.
# include
# include
void main ()
{const N=30;int i; float maxs;
struct student{ char fam[15];
int kurs;
char grup[3];
float stip; };
clrscr();
for(i=0;i
{ printf(“%d-й студент”,i);
printf(“\n Фамилия:”);scanf(“%s”,&stud[i].fam);
printf(“\n Курс:”);scanf(“%s”,&stud[i].kurs);
printf(“\nГруппа :”);scanf(“%s”,&stud[i].grup);
printf(“\nСтипендия :”);scanf(“%s”,&stud[i].stip);
}
maxs=0;
for(i=0;i
if(stud[i].stip>maxs) maxs=stud[i].stip;
printf(“\nCтуденты получающие макс.стипендию%f те же”,maxs);
for(i=0;i
if(stud[i].stip==maxs)
printf(“\n%s”, stud[i].fam);}
2. Аттестация туралы мәлімет берілген. Студенттің фамилиясы, тобы, 5 пәннің аты және әрбір пән бойынша алынған балл саны. Осы пәндер бойынша аттаестациядан өтпеген студенттердің фамлиясын баспаға шығар.
Фамилия
|
Тобы
|
Матем.
|
Ағыл.т
|
Физика
|
Прог.алг
|
ТОЭЦ
|
Жалелов.Е
|
1АЖ
|
5
|
5
|
5
|
5
|
5
|
Ахметова.Б
|
1АЖ
|
5
|
5
|
5
|
5
|
5
|
Ешпанов.Б
|
1АЖ
|
4
|
4
|
4
|
4
|
4
|
Жумагалиев.Б
|
1АЖ
|
4
|
4
|
4
|
4
|
4
|
Имашев.Р
|
1АЖ
|
3
|
3
|
3
|
3
|
3
|
#include
#include
main( )
{ const N=5; int i;
struct student {char fam[15];
char grup[7];
int matem;
int english;
int fizika;
int prog;
int toec; };
student stud[N];
clrscr( );
for(i=0; i
{printf(“%d-й студент”, i);
printf(“\n Фамилия:”); scanf(“%s”,& stud[i].fam);
printf(“группа:”); scanf(“%s”,& stud[i].gpup);
scanf(“%d”,& stud[i].matem);
scanf(“%d”,& stud[i].english);
scanf(“%d”,& stud[i].fizika);
scanf(“%d”,& stud[i].prog);
scanf(“%d”,& stud[i].toec);
for(i=0; i
if(stud[i].matem==2|| stud[i].english==2|| stud[i].fizika==2|| stud[i].prog==2|| stud[i].toec==2)
printf(“\n %s”, stud[i].fam);
}
Тапсырмалар
1-деңгей
1. Пернетақтадан енгізілетін мәліметтерді жеті элементтен тұратын бүтін типтің бірөлшемді жиымына жазатын бағдарлама құрыңыз. Әрбір элементті енгізбестен бұрын элемент нөмірі көрсетіліп тұруы қажет.
2. Пернетақтадан енгізілетін мәліметтерді бес элементтен тұратын нақты типтің бірөлшемді жиымына жазатын бағдарлама құрыңыз, осыдан кейін нөлдік емес элементтер санын шығаруы керек. Әрбір элементті енгізбестен бұрын элемент нөмірі көрсетіліп тұруы қажет.
3. Бүтін санның масивінен минималды элементті анықтайтын бағдарлама құрыңыз.
4. Бүтін санның масивінен максималды элементті анықтайтын бағдарлама құрыңыз
5. Бүтін типтің массивінен нөлдік емес элементтердің арифметикалық орталығын есептейтін бағдарлама құрыңыз.
6. Максималды және минималды элементтерді санамаған кездегі элементтердің арифметикалық орталығын есептейтін бағдарлама құрыңыз.
7. Ауаның орташа температурасын анықтайтын бағдарлама құрыңыз. Берілген мәліметтер бағдарламаны орындау кезінде енгізіледі.
8. Енгізілген санның массивте бар-жоғын анықтайтын бағдарлама құрыңыз.Массив бағдарламаны орындау кезінде енгізіледі.
9. Массив элементінің өсу бойынша орналасқанын тексеретін бағдарлама құрыңыз.
10. Енгізілген санның массивте неше рет қайталанғандығын анықтайтын бағдарлама құрыңыз.
2-деңгей
Берілген бір өлшемді массивтегі 3-ке қысқаратын элементтер қосындысын табу керек.
Берілген массивтегі теріс элементтердің жалпы санын, қосындысын, көбейтіндісін, арифметикалық ортасын табу керек.
Берілген массивтегі жұп элементтерді кездесу ретімен екінші бір өлшемді массивке жазу керек.
Берілген массивтегі жұп элементтердің жалпы санын, қосындысын, көбейтіндісін, арифметикалық ортасын табу керек.
Берілген бір өлшемді массивтегі ең кіші және ең үлкен элементтерді орындарымен алмастыр.
Берілген массивтегі элементтер түрін анықта.
Берілген екі өлшемді массивтегі теріс, оң элементтердің санын табу керек.
Берілген екі өлшемді массивтің әр жолындағы жұп элементтердің қосындысын табу керек.
Берілген екі өлшемді массивтің әр бағанындағы тақ элементтерінің арифметикалық ортасын табу керек.
Берілген квадрат матрицаның бас диагоналы бойындағы теріс оң элементтер санын табу керек.
3-деңгей
Емтихан нәтижесін өңдейтін бағдарлама құрыңыз. Әрбір баға үшін бағдарлама бағаның ортақ санынан процентін анықтауы қажет.
Сыныпта ұзын бойлы оқушыларды анықтайтын бағдарлама құрыңыз.
Бес элементі бар үш жолда орналасқан екі өлшемді массивті енгізіп, жол элементтерінің арифметикалық орталығын анықтаңыз.
Бір өлшемді массивті кему бойынша сұрыптайтын бағдарлама құрыңыз.
Өсу бойынша орналасқан екі массивті бір массивке біріктіріп, оларды өсу бойынша орналастыратын бағдарлама құрыңыз.
Екі өлшемді массивті жол бойынша енгізіп, оның элементтерінің қосындысын баған бойынша есептейтін бағдарлама құрыңыз.
Екі өлшемді массивті жол бойынша енгізіп, оның элементтерінің қосындысын жол бойынша есептейтін бағдарлама құрыңыз.
Элементтерінің қосындысы максималды болатын екі өлшемді массив жолын анықтайтын бағдарлама құрыңыз.
Енгізілген шаршы матрицаның «сиқырлы шаршы» екенін тексеретін бағдарлама құрыңыз. Сиқырлы шаршы болып элементтерінің қосындысы тігінен, көлденеңінен және диагональ бойынша тең болып келетін матрица табылады.
Спорттық жарыстың нәтижесін шығаратын бағдарлама құрыңыз. Командаларды алтын, күміс және қола медальдар бойынша жинаған ұпайларының сандарына сәйкес орналастырып шығыңыз. Ұпай саны K = 7NG + 6NS + 5NB формуласы арқылы есептеледі. Бағдарлама мысалы осылай келтіріледі.
Жарыс қорытындысы
Австрия-> 0 1 1
Германия-> 1 0 2
Норвегия-> 4 2 1
Россия-> 2 3 2
Финляндия-> 1 2 2
--------------------------------------
Команда Алтын Күміс Қола Барлығы Ұпай
1 Норвегия 4 2 1 7 45
2 Россия 2 3 2 7 42
3 Финляндия 1 2 2 5 29
4 Германия 1 0 2 3 17
5 Австрия 0 1 1 2 11
3 тақырып. Алға қойылған міндетті шешу үшін платформаны, бағдарлау тілін және аспаптарды таңдайды.
Достарыңызбен бөлісу: |