1. Сызықты құрылымды алгоритмдерді бағдарламалау
Жұмыстың мақсаты – алгоритмдерді құру ережелерімен, Паскаль тіліндегі бағдарлама құрылымымен танысу, арифметикалық өрнектерді жазу ережелерімен, сызықты құрылымды алгоритмдердің ерекшеліктерімен танысу және меншіктеу, енгізу, шығару операторлын қолдану.
Практикалық жұмыс №1
Берілген аргумент үшін функцияның мәнін есептейтін алгоритмнің блок-сұлбасын және бағдарламасын құрастыру керек.
Алгоритмді сөзбен сипаттау:
1) a,b,c айнымалыларын енгізу;
2)
x
=
есептеу;
3)
P= 4)P шығару; 5)соңы.
Блок-схема:
Бағдарламалық алгоритмі: Pascal: uses crt; var a,b,c,x,P:real; begin writeln('a,b,c sandaryn engiziniz'); read(a,b,c); x:=a*a+b*b+c*c; P:=(sqrt(x)/(2*a+b*sin(c)))-Ln(a+2*b*c)/x; writeln('P=',P) end. Си: #include<stdio.h> #include<conio.h> #include<math.h> main() { float a,b,c,x,P; printf("a,b,c sandaryn engiziniz:"); printf("\n a=");scanf("%f",&a); printf(" b=");scanf("%f",&b); printf(" c=");scanf("%f",&c); x=pow(a,2)+pow(b,2)+pow(c,2); P=(sqrt(x)/(2*a+b*sin(c)))-log(a+2*b*c)/x; printf("\nP=%f",P); getch(); }
Бағдарламаның нәтижесі:
2. Тармақталып құрылған бағдарламаның алгоритмі
Жұмыс мақсаты – тармақты құрылымды алгоритмдерді бағдарламалаудың ерекшеліктерімен және көшу операторларымен танысу.
Берілген функцияның мәнін табудың бағдарламасын және блок-сұлбасын құрыңыз.
Алгоритмді сөзбен сипаттау:
Блок-схема: басы
х енгізу
+ x<1 −
y=sinx+2 x>5 + − y=cosx-2 y= tgx
y
соны
Бағдарламалық алгоритмі: Pascal: uses crt; label k; Var x,y:real; Begin k: Writeln('x ti engiziniz'); Read(x); If x<1 then y:=sin(x)+2 else if x>5 then y:=tan(x) else y:=cos(x)-2; writeln ('Y=',y);goto k end. Си: #include<stdio.h> #include<conio.h> #include<math.h> main() { float x,y; printf("X="); scanf("%f",&x); if(x<1) y=sin(x)+2; else if(x>5) y=tan(x); else y=cos(x)-2; printf("\nY=%f",y); getch(); } Бағдарламаның нәтижесі:
Енгізілген квадрант нөміріне сәйкес нүкте координаттарының таңбаларын анықтаңыз. Егер де енгізілген нөмір сәйкес болмаса енгізуді қайталаңыз.
Блок-схема:
|
Бағдарламалық алгоритмі:
Pascal:
uses crt;
label k;
var n :integer;
begin
k:
writeln('Kvadrant nomerin engiziniz(1,2,3,4)');
readln(n);
case n of
1:write(' plus,plus ');
2:write(' minus,plus ');
3:write(' minus,minus ');
4:write(' plus,minus ');
else goto k
end;
end.
Си:
#include<stdio.h>
#include<conio.h>
#include<math.h>
main()
{
int n;
printf("1..4 aralygynda san engiziniz\n");
scanf("%d",&n);
switch (n)
{
case 1:puts("plus,plus"); break;
case 2:puts("minus,plus"); break;
case 3:puts("minus,minus"); break;
case 4:puts("plus,minus"); break;
default: puts("Chislo doljno byt v diapazone 1..4");
}
getch();
}
Бағдарламаның нәтижесі:

есептеу;