Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

для экзамена по инф Брэ / решение задач по паскаль

.doc
Скачиваний:
52
Добавлен:
25.04.2015
Размер:
1.04 Mб
Скачать

Алматинский институт энергетики и связи  

Кафедра «Информационных технологий»

Использование возможностей программирования для решения вычислительных задач

 

 

 

Вариант 3

Вариант 6

 

 

 Выполнил

студент гр. БСИ-12-02

Аманжолов Т.К.

Проверил

старший преподаватель

Водолазкина Н.А.

«___»_____________200__ г.

 

Алматы 2012

Содержание:

Введение ……………………………………………………....……………………3

1. Перевод чисел……………………….…………………………………………..4

2. Вычисление уровня резервуара………………………………..……………...6

3. Вычисление функций на интервале……………………………………………8

4. Вычисление плотности…………………………………………………………10

5. Определение характеристик потоков некоторых жидкостей……………….12

6. Вычисления сопротивления и температуры в интервале…………………...17

7. Действия с векторами…………………………………………………………..27

8. Вычисление объема бункера………………………………………………......24

Заключение…………………………………………………………………………..21

Список литературы.……………………………………….………………...........28

Введение

Язык Паскаль был разработан в начале 70-х годов ХХ века швейцарским профессором Никлаусом Виртом как инструмент для систематического обучения программированию. Для этого в состав языка были включены элементы структурного программирования (последовательные, разветвляющиеся и циклические структуры) и структуры данных (массивы, записи, файлы и т.д.). В 1983 году французский математик Филипп Кан разработал компактный, быстродействующий компилятор, названный Турбо Паскалем. В 1992 году фирма Borland International выпустила в свет очередную версию языка Турбо Паскаль 7.0 с улучшенным интерфейсом пользователя и более быстрым компилятором. Принципы построения программ, заложенные в Паскале, получили развитие в таких языка программирования как Ада, Модула-2, Си и т.д. Турбо Паскаль не только обеспечивает возможность создания больших программ, поддерживая их строгую логическую структуру, что весьма ценно для начинающих программистов, создающих серьезные программы, так как приучает их к определенной дисциплине. Кроме того, Паскаль считается достаточно простым и эффективным инструментом для решения инженерных задач.

К основным особенностям Турбо Паскаль можно отнести довольно строгие требования к структуре программы. Программа на языке Паскаль записывается в виде последовательности символов, к числу которых относятся латинские буквы, арабские цифры, знаки препинания, знаки операций. Для обозначения исходных данных и результатов вычислений (промежуточных и итоговых) употребляются переменные, имена (идентификаторы) которых могут быть не только буквами - a, b, X, Y и т.д., но и последовательностью символов вида x1, time, alfa2 и т.д., которые состоят из букв и цифр и начинаются с буквы. Ключевые слова – это множество имен, которые используются в языке для написания операторов и других конструкций. Имена, применяемые пользователем для обозначения конструкция не должны совпадать с ключевыми словами. Список зарезервированных слов и перечень операций языка приведены в таблицах В1 и В2. Соответствующее исходное данное или результат вычисления называется значением переменной. Константы отличаются от переменной тем, что их значения не меняются в ходе выполнения программы. Числа записываются в десятичной системе, вместо запятой ставится точка: 0, -19, 0.27, 3.1415 и т.д.

Вариант 3

3.1

Составить блок-схему и программу вычисления значений функции при заданных значениях аргумента.

Блок-схема:

Группа 19

Выполнение программы:

Листинг программы:

Program Zadanie1;

uses crt;

Var z,x,y,e,c:real;

Begin

clrscr;

Writeln('Vvdeti zna4enie x');

Readln(x);

Writeln('vvedite zna4enie y');

readln(y);

c:=exp(ln(x)*3)+sqr(y);

z:=c/(y*sin(x))-ln(y+5*exp(ln(e)*(y+x)))/exp(ln(abs(c))*1/4);

Write('Z=', z:10:3);

end.

3.2

Составить блок-схему и программу разветвляющейся структуры для вычисления заданной функции.

Блок-схема:

Группа 24

Выполнение программы:

Листинг программы:

Program Zadanie2;

Var x,y:real;

Begin

Write('Vvedite x');

Read(x);

If x<1

then y:=sqrt(sqr(x)+5)

else y:=3*x+cos(x+5.7);

write ('Y=',y:10:3);

end.

    1. Составить программу решения задачи, используя оператор выбора. Определить квартал текущего года по вводимому номеру месяца. В случае если пользователь укажет недопустимый номер, то повторить попытку ввода.

Блок-схема:

Группа 132

Выполнение программы:

Листинг программы:

Program Zadanie3;

uses crt;

Var i:integer;

Begin

Writeln('Vvedite nomer mes9ca');

readln(i);

If i=1 then write('1 kvartal')

else

if i=2 then write('1 kvartal')

else

if i=3 then write('2 kvartal')

else

if i=4 then write('2 kvartal')

else

if i=5 then write('2 kvartal')

else

if i=6 then write('3 kvartal')

else

If i=7 then write('3 kvartal')

else

if i=8 then write('3 kvartal')

else

if i=9 then write('4 kvartal')

else

If i=10 then write('4 kvartal')

else

If i=11 then write('4 kvartal')

else

If i=12 then write('1 kvaratal')

else

write('povtorite popytku vvoda');

end.

3.4 Решить задачу согласно варианту тремя способами, т.е. с использованием операторов цикла For-To (или For-Downto), While-Do и Repeat-Until.

Даны числа a и n. Вычислить P = a(a-n) (a-2n) (a-3n) (a-n2).

Блок-схема:

Группа 29

Выполнение программы:

Листинг программы:

program zadanie 4;

uses crt;

var i, n, a, p: integer;

begin

writeln('Vvedi N: ');

readln(n);

writeln('Vvedi A: ');

readln(a);

p:=a;

for i:=1 to n do

p:=p*(a-i*n);

writeln(p);

readln;

end.

3. 5 Вычислить сумму положительных элементов массива Z(10).

Блок-схема:

Полотно 89

Выполнение программы:

Листинг программы:

program zadanie5;

uses crt;

const n=10;

var y,z: array [1..n] of integer;

i,j: byte;

begin

writeln('?????? Y');

for i:=1 to n do

begin

y[i]:=random(199)-99;

write(y[i]:4);

if y[i]>0 then

begin

inc(j); z[j]:=y[i];

end;

end;

writeln;

writeln('?????? Z');

for i:=1 to j do

write(z[i]:4);

end.

3.6 Программирование алгоритмов работы с частями матрицы.

Найти количество положительных элементов, расположенных ниже главной диагонали матрицы Y(5,5).

Блок-схема:

Группа 59

Выполнение программы:

Листинг программы:

program zadanie6;

uses crt;

var Y:array [1..5,1..5] of integer;

k,i,j:integer;

begin

clrscr;

Writeln('Vvedite znachenia elementov massiva');

for i:=1 to 5 do

for j:=1 to 5 do begin

write ('Y[',i,',',j,']=');

Readln (Y[i,j]);

end;

k:=0;

for i:=1 to 5 do

for j:=1 to 5 do

begin

If (i>j)and (Y[i,j]>0) then begin

k:=k+1;

end;

end;

writeln('Kolichestvo nije glavnoi diagonali=',k);

end.

Вариант 6

6.1 Составить блок-схему и программу вычисления значений функции при заданных значениях аргумента.

Блок-схема

Выполнение программы

Листинг программы:

Program Zadanie1;

uses crt;

var x,y,z,c,e:real;

Begin

clrscr;

Writeln('Vvdeti zna4enie x');

Readln(x);

Writeln('vvedite zna4enie y');

readln(y);

e:=2.7;

c:=x+y;

z:=sqr(sin(c))/sqr(c)-sqrt(abs(3*x-4*y))/(cos(x)+exp(ln(e)*(5*x)));

Write('Z=', z:10:3);

end.

6.2 Составить блок-схему и программу разветвляющейся структуры для вычисления заданной функции.

Блок-схема

Группа 31

Выполнение программы

Листинг программы

program zadanie2;

uses crt;

Var x,y:real;

Begin

Writeln('Vvedite x');

Readln(x);

If x<0

then y:=sqrt(4*sqr(x)+5)

else

if x>=0

then y:=Ln(4*sqr(x)+5)/ln(10);

write ('y=',y:10:3);

end.

6.3 Составить программу решения задачи, используя оператор выбора.

Вводится целое число. Если введено "1", то вывести "понедельник". Если введено "2", то вывести "вторник" и т.д. В остальных случаях - "Повторите попытку ввода".

Блок-схема

Группа 82

Выполнение программы

Листинг программы

Program premir1;

uses crt;

var k:integer;

begin

writeln('vvedite den nedeli');

readln(k);

if k=1 then write('ponedelnik')

else

If k=2 then write('vtornik')

else

If k=3 then write('sreda')

else

If k=4 then write('4etverg')

else

If k=5 then write('p9tnica')

else

If k=6 then write('subbota')

else

If k=7 then write('voskresenie')

else

Write('povtorite popytku vvoda');

end.

6.4 Решить задачу согласно варианту тремя способами, т.е. с использованием операторов цикла For-To (или For-Downto), While-Do и Repeat-Until.

Даны вещественное число X и натуральное число n. Вычислить сумму первых n слагаемых S = sinX + sinX2 + sinX3 +…+ sinXn.

Блок-схема

Группа 33

Выполнение программы

Листинг программы:

program primer1;

uses crt;

var i,n:integer;a,x,sum:real;

begin

write('vvite x=');

read(x);

write('vvedite n=');

read(n);

a:=exp(n*ln(x));

sum:=0;

i:=1;

repeat

sum:=sum+sin(a);

writeln('i=',i:2,sum:10:3);

i:=i+1;

until i>n

end.

6.5 Характерные приемы программирования обработки одномерных массивов.

Для целочисленного массива Х(9) найти произведение его элементов с четными индексами и выяснить является ли оно нечетным числом.

Блок-схема:

Группа 51

Выполнение программы

Листинг программы

program pr1;

uses crt;

var x:array[1..9] of integer;

i,n,pr:integer;

begin

write('vvedite znachenie');

for i:=1 to 9 do

readln(x[i]);

pr:=1;

for i:=1 to 9 do

begin

If i mod 2=0 then pr:=pr*x[i];

writeln('pr=',pr:10);

If odd(pr) then write('nechetnaia')

else write('chetnaia');

end;

end.

6.6. Найти количество нулевых элементов матрицы В(4,4), расположенных выше главной диагонали.

Блок-схема:

Группа 78

Выполнение программы:

Листинг программы

program massivi;

uses crt;

var A:array [1..4,1..4] of integer;

i,j:integer;

vise:integer;

begin

for i:=1 to 4 do

for j:=1 to 4 do begin write('A[',i,',',j,']='); readln(A[i,j]); end;

writeln;writeln('Ishodnyi:');

for i:=1 to 4 do begin writeln;

for j:=1 to 4 do write (A[i,j]:8); end;

vise:=0;

for i:=1 to 4 do

for j:=1 to 4 do

begin

if (i<j) and (A[i,j]=0) then inc(vise);

end;

writeln;

writeln;writeln('Rezulitaty:');

writeln('Kol-vo VISE glavnoi diagonali: ',vise:5);

readln;

end.

23