Файл: Решением по теме Организация линейных, разветвляющихся и циклических алгоритмов на языке программирования Паскаль.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 162

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
=IR,где V —напряжение,приложенное к участку цепи, I — сила тока, а R — электрическое сопротивлениеучасткацепи.

  1. Написать программу для определения подходящего возраста для вступления в брак, используя следующее соображение: возраст девушки равен половине возраста мужчины плюс 7, возраст мужчины определяется соответственно как удвоенный возраст девушки минус 14. Данные для проверки работы программы задать самостоятельно.

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


=

+ 2


+ +






  1. Написать программу вычисления значения функции у

у =x2,если -2<=xтогдаy=2, у =4в остальных случаях

  1. Наберите и отладьте программу imena (определение полного имени по короткому).

После отладки проверьте ее при работе с именами Саша, Коля и Витя.

Решение ветвящихся задач





  1. Program vet1; Var a:integer;

Begin

writeln ('Введите значение переменной a');

Readln (a);

If a>0 then a:=a-10 else a:=a+10; Writeln ('Переменная a = ',a); End.

  1. Program vet2; Var a,b,d:integer;

Begin

writeln ('Введите значение переменных a и b');

Readln (a,b); d:=a*b;

If d<0 then d:=d*(-2) else d:=d*3; Writeln ('Переменная d = ',d); End.

  1. Program vet3;

Var a,b:integer; d:real;

Begin

writeln ('Введите значение переменных a и b');

Readln (a,b); d:=a+b;

If d mod 2=0 then d:=a*b else d:=a/b; Writeln ('Переменная d = ',d);

End.

  1. Program vet4; Var a,b,d:integer;

Begin

writeln ('Введите значение переменных a и b');

Readln (a,b);

If a>b then d:=a-b else d:=b-a; Writeln ('Переменная d = ',d); End.

  1. Program vet5;

Var a:real;

Begin

writeln ('Введите значение переменной a');

Readln (a);

If a<=10 then a:=a*5 else a:=a/2; Writeln ('Переменная a = ',a); End.

  1. Program vet6;

Var a,b:integer; S:real;

Begin

writeln ('Введите значение переменных a и b');

Readln (a,b); S:=a+b;

If S>100 then S:=S/2 else S:=S*2; Writeln (('Переменная S = ',S); End.

  1. Program vet7; Var a,b,d,s:integer;

Begin

writeln ('Введите значение переменной a');

Readln (a);

b:= a div 10; d:= a mod 10; S:= b+d; If s mod 2=0 then a:=a+2 else a:=a-2; Writeln ('Переменная d = ',d);

End.

  1. Program vet8; Var a,b,с:integer;

Begin

writeln ('Введите значение переменных a, b и с');

Readln (a,b,c);

If a>=b+c then Writeln (‘Нет’)

Else if b>=a+с then Writeln (‘Нет’) Else if c>=a+b then Writeln (‘Нет’) Else Writeln (‘Да’);

End.

Задачи на циклические алгоритмы




Циклы с известным числом повторений


  1. Вывести на экран 3 раза слово «Hello». Особенность: одинаковые действия выполняются 3 раза.

  2. Напечатать ряд из повторяющихся чисел 20 в виде:

20 20 20 20 20 20 20 20 20 20


  1. Вывести столбиком следующие числа:

2.8 … 8.8


  1. Напечатать числа следующим образом:

10 10.4

11 11.4

. . .

25 25.4


  1. Напечатать числа следующим образом:

25 25.5 24.8

26 26.5 25.8

. . .

35 35.5 34.8


  1. Напечатать столбиком все целые числа от 20 до 35 и вычислить корни этих чисел.

  2. Напечатать столбиком все целые числа от а до b (значения а и b вводятся с клавиатуры).



Циклы с предусловием


  1. Составить программу вывода 10 целых чисел на экран.

9. Вычислить сумму ряда S = 1+1.5+2+2.5+3+3.5+…+ 30.

  1. Вычислить сумму ряда = 2 + 2 + 2 + 2 + 2 2 , с точностью e = 0,1.

1 2 3 4 i

  1. Мой богатый дядюшка подарил мне один доллар в мой первый день рождения. В каждый день рождения он удваивал свой подарок и прибавлял к нему столько долларов, сколько лет мне исполнилось. Написать программу, указывающую, к какому дню рождения подарок превысит 100$.




Циклы с постусловием


  1. Написать программу ввода неопределённого ряда целых чисел до тех пор, пока не будет введён 0. После ввода 0 программа должна вывести сообщение «Программа закончена».

  2. Составить программу вывода 30 целых чисел на экран.

  3. Найти сумму ряда S = 15+16+17+...+n.

  4. Составить программу подсчета суммы S первых 1000 членов гармонического ряда 1+1/2+1/3+1/4+...1/N. Округлить результат до двух знаков после запятой.

Решение циклических задач





  1. Program C2; var i: integer; begin

for i:=1 to 10 do write(20,' ') end.

  1. Program C3; var i: integer; begin

for I:=2 to 8 do writeln(' ',I+0.8:0:1); end.

  1. Program C4; var i: integer; begin

for I:=10 to 25 do writeln(I,' ',I+0.4:0:1); end.

  1. Program C5; var i: integer; begin

for I:=25 to 35 do writeln(I,' ',I+0.4,' ',i+0.8:0:1);

end.

  1. Program C6; var i: integer; begin

for I:=20 to 35 do writeln(I,' ',sqrt(i):0:1); end.

  1. Program C7; var a,b,i:integer; begin readln(a,b);

for i:=a to b do writeln(i) end.

9. program c2; var

sum:real; n:real; BEGIN

sum:=0; n:=1;

while n < =30 do begin sum:=sum+n;

n:=n+0.5;

end;

writeln('Сумма равна: ',sum); END.

  1. program c1; var dr,pod: integer; begin

pod:=1; dr:=1;

while pod<=100 do begin pod:=(pod*2)+dr; dr:=dr+1;

end;

write('Возраст= ',dr); end.

  1. Program N4; Var A: Integer; begin

REPEAT

Write('Введите числа (0 - выход): '); Readln(A);

UNTIL A=0;

Write(Программа закончена ') END.

15. Program Summa; Var S:real; N:integer; Begin

S:=0;N:=0;

repeat N:=n+1;

S:=s+1/n Until n>1000; Writeln(s:0:2); End.
0>