А тапсырманың нұсқалары
ЗЕРТХАНАЛЫҚ ЖҰМЫСТАРДЫҢ ЖОСПАРЫ
Зертханалық жұмыс №1. Сызықты алгоритмдерді программалау (2/1 сағ)
Жұмыстың мақсаты:Си тілінде диалог режимінде қарапайым программаларды құру, оларды компьютерге енгізу, орындау және түзету.Программаны орындау барысында сызықты алгоритмдерді іске асыратын қате туралы компилятордың диагностикалық хабарламаларымен танысу, үйрену.
Жалпы мәліметтер:
Си тіліндегі қарапайым программа атауы мен main() негізгі функцияның денесінен тұрады. Программаның атауында кітапхана файлдары көрсетіледі, олар программада қолданылатын негізгі функциялардан құралған. Си программасының негізгі бөлігі void main ()операторымен басталады. Си тіліндегі программаның құрылымы келесі түрде сипатталады:
# include <stdio.h>
# include <math.h>
void main()
{ локальды айнымалылар, константаларды хабарлайды;
мән;
функциялар;
операторлар;
}
Printf() форматтап шығару функциясы
функция синтаксисі:
printf(<басқару жолы>, <айнымалылар тізімі>);
мұндағы <айнымалылар тізімі> - айнымалылар идентификаторларының тізімі, экранға олардың мәндерін міндетті шығару қажет.
<басқарушы жол> - екі тік жақшаға алынған спецификаторлар тізімін көрсететін жол: %i – белгісі бар бүтін сандарды енгізуге арналған, %u – белгісі жоқ бүтіндерді бүтін түрінде енгізуге арналған, %f – бөлшек сандарды енгізуге арналған, %с – символдарды енгізуге арналған, %s – жолдарды енгізуге арналған.
Scanf() форматталған енгізу функциясы
функция синтаксисі:
scanf(<басқару жолы>, <айнымалылар адрестерінің тізімі>);
мұндағы <басқарушы жол> - тек қана printf() функциясына сәйкес спецификациялар мәндер тізімі бойынша спецификация форматын құрайтын жол;
<айнымалылар адрестерінің тізімі> – функциямен енгізілетін үтір арқылы берілген айнымалылар адресін құрайды. Айнымалылар адресі & символымен берілген және ары қарай айнымалылар идентификаторы жазылады, мысалы, stud айнымалылар адресі &stud символымен көрсетіледі.
Си тілінде 5 базалық деректер типі бар:
char - символдық тип; int - бүтін тип; float – жылжымалы нүктелі мәліметтер типі; double – ұзындығы екі еселенген жылжымалы нүктелі мәліметтер типі; viod – ешқандай мәні жоқ бос тип.
А тапсырмасы
Оң жаққа мәндерді есептейтін программа құру. Есептеуге арналған барлық мәндерді пернетақтадан енгізу.
Мысал
Тапсырма: Есептеу
Математикалық модель:
Жаңа айнымалыларды енгізе отырып, мәндерді қарапайым түрге бөлеміз.
2.1.1 сурет –Есепті шешудің блок-схемасы
Блок-схеманы С тіліне айналдырамыз.
Программа мәтіні келесідей түрде беріледі:
#include <stdio.h>/* кітапхана функциясын қосу*/
#include <math.h>
void main(void)
{ int x,y; /* айнымалылардың бүтін типін хабарлайды*/
float dop,a,b,c, rezult; /* айнымалылардың нақты типін хабарлайды*/
scanf("%d",&x); /* х айнымалысын енгізу*/
scanf("%d",&y); /* у айнымалысын енгізу */
dop=fabs(y-x);
a=pow(x,y+1)+exp(y-1);
b=1+x*fabs(y-tan(z));
c=0.5*pow(dop,2)-pow(dop,3)/3;
rezult=a/b*(1+dop)+c;
printf("%lf", rezult);
getch( ); /* кез келген пернені басқанша экранды ұстап тұру */
}
Қосымша интерфейспен қамту үшін программаны ары қарай түрлендірейік:
#include <stdio.h>
#include <math.h>
void main(void)
{
int x,y;
float dop,a,b,c, rezult;
scanf("%d",&x);
scanf("%d",&y);
puts(" ЗЕРТХАНАЛЫҚ ЖҰМЫС N1 - СЫЗЫҚТЫҚ ПРОГРАММА ");
puts("============================================");
dop=fabs(y-x);
a=pow(x,y+1)+exp(y-1);
b=1+x*fabs(y-tan(z));
c=0.5*pow(dop,2)-pow(dop,3)/3;
rezult=a/b*(1+dop)+c;
printf("\a\n ЖАУАБЫ: rezult=%lf", rezult);
printf (“Аяқтау үшін <Enter> пернесін бас”);
getch( ); /* КЕЗ КЕЛГЕН ПЕРНЕНІ БАСҚАНША ҰСТАП ҚАЛУ */
}
#include <stdio.h>
#include <math.h>
int main(void)
{
int x,y;
float dop,a,b,c, rezult,z;
puts("ЗЕРТХАНАЛЫҚ ЖҰМЫС N1 - СЫЗЫҚТЫҚ ПРОГРАММА ");
puts("============================================");
printf ("x\nx= енгіз");
scanf("%d",&x);
printf ("y\ny= енгіз");
scanf("%d",&y);
printf ("z\nz= енгіз");
scanf("%d",&z);
dop=fabs(y-x);
a=pow(x,y+1)+exp(y-1);
b=1+x*fabs(y-tan(z));
c=0.5*pow(dop,2)-pow(dop,3)/3;
rezult=a/b*(1+dop)+c;
printf("\a\n ЖАУАБЫ: rezult =%lf", rezult);
printf (“Аяқтау үшін <Enter> пернесін бас ”);
getch( ); /* КЕЗ КЕЛГЕН ПЕРНЕНІ БАСҚАНША ҰСТАП ҚАЛУ */
return 0;
}
Программаны орындау нәтижесі:
ЗЕРТХАНАЛЫҚ ЖҰМЫС N1 - СЫЗЫҚТЫҚ ПРОГРАММА ============================================
x енгіз
x=2
y енгіз
y=3
z енгіз
z=1
ЖАУАБЫ: rezult =6.849254
А тапсырманың нұсқалары
1. Y=
Б тапсырмасы
Есепті есептейтін программа құру. Есептеуге арналған барлық мәндерді пернетақтадан енгізу.