Оглавление:
- 1 Ответы (решебник) к учебнику по Информатике — 8 класс, параграф 3.5 — Босова Л.Л., Босова А.Ю., задания 1-18
- 1.1 Глава 3. Начала программирования
- 1.2 §3.5.Программирование разветвляющихся алгоритмов ГДЗ, Информатика 8 класс Босова ответы на «Вопросы и задания»
- 1.3 Задание 2. Дана последовательность операторов. Сколько раз будет повторен цикл и какими будут значения переменных a, b, s?
- 1.4 Задание 3. Требовалось написать программу вычисления факториала. Программист написал его неправильно. Ниже представлена программа, в которой содержатся ошибки. Найдите ошибки и внесите исправления.
- 1.5 Задание 4. Проанализируйте следующий цикл. В чём его особенность?
- 1.6 Задание 5. Запишите на языке Паскаль программы решения задач № 26-30 из параграфа 2.4. Используйте оператор while.
- 1.7 Задание 6. Дана последовательность операторов. Сколько раз будет повторен цикл и какими будут значения переменных a, b, s?
- 1.8 Задание 7. Напишите программу, в которой осуществляется ввод целых чисел (ввод осуществляется до тех пор, пока не будет введен ноль) и подсчет суммы и среднего арифметического введенных положительных чисел. Используйте оператор repeat.
- 1.9 Задание 8. Напишите программу, в которой осуществляется ввод целых чисел (ввод осуществляется до тех пор, пока не будет введен ноль) и определение максимального (наибольшего) из введённых чисел. Используйте оператор repeat.
- 1.10 Задание 9. Напишите программы вычисления наибольшего общего делителя НОД двух целых чисел:
- 1.11 Задание 10. Сколько раз будет выполнен цикл?
- 1.12 Задание 13. Напишите программу, которая вычисляет сумму:
- 1.13 Задание 14. Напишите программу, которая генерирует 10 случайных чисел в диапазоне от 1 до 20, выводит эти числа на экран и вычисляет их среднее арифметическое.
- 1.14 Задание 15. Запишите на языке Паскаль программы решения задач 33 и 34 из параграфа 2.4. Используйте оператор for.
- 1.15 Задание 16. Напишите программу, которая выводит на экран таблицу степеней двойки (от нулевой до десятой).
- 1.16 Задание 17. Напишите программу, которая выводит на экран таблицу умножения на n (n – целое число от 2 до 10, вводимое с клавиатуры).
- 1.17 Задание 18. Какой из трёх рассмотренных операторов цикла является, по вашему мнению, основным, т.е. таким, что им можно заменить два других?
Ответы (решебник) к учебнику по Информатике — 8 класс, параграф 3.5 — Босова Л.Л., Босова А.Ю., задания 1-18
Глава 3. Начала программирования
§3.5.Программирование разветвляющихся алгоритмов ГДЗ, Информатика 8 класс Босова ответы на «Вопросы и задания»
Задание 2. Дана последовательность операторов. Сколько раз будет повторен цикл и какими будут значения переменных a, b, s?
a:=1;
b:=2;
while a+b<8 do
begin
a:=a+1;
b:=b+2;
end;
s:=a+b
Ответ: 2 раза будет повторен цикл, a=3, b=6, s=9.
Задание 3. Требовалось написать программу вычисления факториала. Программист написал его неправильно. Ниже представлена программа, в которой содержатся ошибки. Найдите ошибки и внесите исправления.
Задание 4. Проанализируйте следующий цикл. В чём его особенность?
Значение переменной «c» будет типом boolean, то есть значение будет true или false. Выражение c:=a=b проверяет равенство «a» и «b» и будет делать проверку, пока a < b. В этом случае программа зациклится.
Задание 5. Запишите на языке Паскаль программы решения задач № 26-30 из параграфа 2.4. Используйте оператор while.
program z26;
var a, b, c: real; n: integer;
BEGIN
readln(a, b, c);
n:=0;
while a>c do begin
a:=a+0.15*a-b;
n:=n+1;
end;
writeln ('В течение ', n, ' лет');
END.
program z27;
var a, b, n: integer;
BEGIN
write('Сумма слагаемых первых членов последовательности: ');
readln(b);
a:=5;
n:=1;
while ado begin
a:=a+(a+4);
n:=n+1;
end;
writeln (n, ' слагаемых');
END.
program z28;
var m,k: longint;
begin
write('Введите число: ');
readln(m);
k:=0;
while m<>0 do begin
k:=k+1;
m:=m div 10;
end;
writeln('Кол-во цифр: ',k);
end.
program z29;
var m, d: real; n:integer;
begin
m:=10000;
d:=2*m;
n:=0;
while mdo begin
m:=m*1.05; //Подсчитываем количество рублей через год
n:=n+1; //Считаем количество лет
end;
writeln('Сумма увеличится в два раза через ',n, ' лет');
end.
program z30;
var m, t, X: real;
begin
write('Введите количество амёб: ');
readln(X);
m:=1;
t:=0;
while mend.
Задание 6. Дана последовательность операторов. Сколько раз будет повторен цикл и какими будут значения переменных a, b, s?
a:=1;
b:=1;
repeat
a:=a+1;
b:=b*2;
until b>8;
s:=a+b
Ответ: 4 раза будет повторен цикл, a=5, b=16, s=21.
Задание 7. Напишите программу, в которой осуществляется ввод целых чисел (ввод осуществляется до тех пор, пока не будет введен ноль) и подсчет суммы и среднего арифметического введенных положительных чисел. Используйте оператор repeat.
program z_7;
var m, n: integer; s: real;
begin
n:=0;
s:=0;
repeat
readln (m);
if m>0 then begin
n:=n+1;
s:=s+m
end;
until m=0;
writeln('Сумма положительных чисел: ', s);
s:=s/n;
writeln('Среднее арифметическое положительных чисел: ', s)
end.
Задание 8. Напишите программу, в которой осуществляется ввод целых чисел (ввод осуществляется до тех пор, пока не будет введен ноль) и определение максимального (наибольшего) из введённых чисел. Используйте оператор repeat.
program z_8;
var m, s: integer;
begin
repeat
readln (m);
if m>s then
s:=m;
until m=0;
writeln('Наибольшее число: ', s)
end.
Задание 9. Напишите программы вычисления наибольшего общего делителя НОД двух целых чисел:
а) используя оператор repeat:
program z9_a;
var a,b,с: integer;
begin
write('Введите два числа: ');
readln(a, b);
if a < b then с := a + 1 else с := b + 1;
repeat с := с - 1
until (a mod с = 0) and (b mod с = 0);
write('NOD = ', с)
end.
б) используя оператор while:
program z9_b;
var a,b: integer;
begin
writeln('Введите два числа: ');
readln(a, b);
while a <> b do
if a > b then
a := a - b
else
b := b - a;
writeln('NOD = ', a);
end.
Задание 10. Сколько раз будет выполнен цикл?
а) for i:=0 to 15 do s:=s+1;
б) for i:=10 to 15 do s:=s+1;
в) for i:=-l to 1 do s:=s+1;
г) for i:=10 to 10 do s:=s+1;
д) k:=5; for i:=k-1 to k+1 do s:=s+1;
а) 16 раз
б) 6 раз
в) 3 раза
г) 1 раз
д) 3 раза
Задание 11. Напишите программу, которая 10 раз выводит на экран ваши имя и фамилию.
program z11; var a, b: string; i: integer; begin write(‘Введите имя: ‘); readln(a); write(‘Введите фамилию: ‘); readln(b); for i:=0 to 9 do writeln (a,’ ‘,b); end.
Задание 12. Напишите программу, выводящую на экран изображение шахматной доски, где черные клетки изображаются звёздочками, а белые – пробелами.
program z11; var a, b: string; i, k, n: integer; begin a:=’*’; b:=’ ‘; for i:=0 to 3 do begin for k:=0 to 3 do write (b,a); writeln; for n:=0 to 3 do write (a,b); writeln; end; end.
Задание 13. Напишите программу, которая вычисляет сумму:
а) первых n натуральных чисел;
б) квадратов первых n натуральных чисел;
в) всех чётных чисел в диапазоне от 1 до n;
г) всех двузначных чисел.
program z13; var i, z1, z2, z3, z4, n: integer; BEGIN write(‘Введите n: ‘); readln(n); z1 := 0; z2 := 0; z3 := 0; z4 := 0; for i := 1 to n do begin z1 := z1 + i; z2 := z2 + sqr(i); if i mod 2 = 0 then z3 := z3 + i; end; for i := 10 to 99 do z4 := z4 + i; writeln(‘Сумма первых n натуральных чисел: ‘, z1); writeln(‘Сумма квадратов первых n натуральных чисел: ‘, z2); writeln(‘Сумма всех четных чисел: ‘, z3); writeln(‘Сумма всех двухзначных чисел: ‘, z4); END.
Задание 14. Напишите программу, которая генерирует 10 случайных чисел в диапазоне от 1 до 20, выводит эти числа на экран и вычисляет их среднее арифметическое.
program z13; var i, s, d: integer; sr: real; BEGIN s:=0; for i:=1 to 10 do begin d:= random(20)+1; writeln(i, ‘ число: ‘, d); s:=s+d end; sr:=s/i; writeln(‘Среднее арифметическое: ‘, sr) END.
Задание 15. Запишите на языке Паскаль программы решения задач 33 и 34 из параграфа 2.4. Используйте оператор for.
program z15_1; var i, a, b, k: integer; BEGIN write(‘Введите первый множитель: ‘); readln (a); write(‘Введите второй множитель: ‘); readln (b); k:=0; for i:=1 to b do begin k:=k+a; end; writeln(a, ‘*’, b, ‘=’, k) END.
В программе мы вводим изначальную численность населения. Далее она считает количество населения в каждый год и итогом будет количество населения через три года.
program z15_2; var i: integer; k, a: real; BEGIN write(‘Введите население города: ‘); readln (a); k:=0; for i:=1 to 3 do begin a:=1.05*a; writeln(i, ‘ год: ‘, a, ‘ человек’) end; writeln(‘Численность населения через 3 года: ‘, a) END.
Задание 16. Напишите программу, которая выводит на экран таблицу степеней двойки (от нулевой до десятой).
Десятую степень не добавили в цикл, она отрабатывает после цикла и выводит эту степень ровно по вертикали.
program z16; var i, k, a: integer; BEGIN a:=2; k:=1; writeln(‘Таблица степеней двойки:’); writeln(‘0 1’); for i:=1 to 9 do begin k:=k*a; writeln(i,’ ‘,k); end; k:=k*a; writeln(’10 ‘,k); END.
Задание 17. Напишите программу, которая выводит на экран таблицу умножения на n (n – целое число от 2 до 10, вводимое с клавиатуры).
program z17; var i, k, n: integer; BEGIN write(‘Введите n>>’); readln(n); for i:=2 to 10 do begin k:=n*i; writeln(n,’ * ‘,i,’ = ‘,k) end; END.
Задание 18. Какой из трёх рассмотренных операторов цикла является, по вашему мнению, основным, т.е. таким, что им можно заменить два других?
Рассмотренные операторы:
repeat until
while do
for 1 to n do
Я думаю, что циклы «repeat until» и «while do» могут заменить другие циклы. Цикл «for» не сможет заменить других, так как в этом цикле происходит известное количество повторений. А в двух других разница в том, что цикл «repeat until» сначала выполняется тело цикла и потом проверяется условие, а с циклом «while do» наоборот.
Решение заданий из учебника Информатика 8 класс Босова, параграф 3.5 Программирование циклических алгоритмов. Программирование циклов с заданным условием продолжения работы, с заданным условием окончания работы, с фиксированным числом повторений, различные варианты программирования циклического алгоритма.
На этой странице размещен вариант решения заданий с страниц учебника по информатике за 8 класс авторов Босова. Здесь вы сможете списать решение домашнего задания или просто посмотреть ответы. ГДЗ
Литература: Учебник по Информатике, 8 класс. Автор: Босова Л.Л., Босова А.Ю. Издательство: Бином. Год: 2016, 2017