СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Задание "Массивы - 1"

Категория: Информатика

Нажмите, чтобы узнать подробности

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  

Просмотр содержимого документа
«Задание "Массивы - 1"»

Массивы-1.

  1. Напишите программу, которая заполняет массив первыми N натуральными числами в обратном порядке (начиная с последнего) и выводит его.(Например при N=5 вывод: 5,4,3,2,1)

  2. Массив длиной 10 заполнить элементами арифметической прогрессии, первый элемент и разность которой задаются с экрана.Распечатать элементы массива, оканчивающихся на 7 или 4. Сообщить, если таковых нет.

  3. Найти сумму элементов массива, заданного эл-тами степеней 2 до 10-той (1,2,4,8,16…1024).

  4. Ряд чисел Фибоначчи задается следующим образом: первые два числа равны 1 (F 1 = F 2 =1), а каждое следующее равно сумму двух предыдущих, т.е F3=1+1=2, F4=F2+F3=1+2=3 и т.д. Напишите программу, которая вводит натуральное число N и заполняет массив из N элементов первыми N числами Фибоначчи. Вывести массив на экран.

  5. Для заданного положительного вещественного числа A необходимо найти минимальное целое число K, при котором выполняется неравенство . Упрощенная версия: посчитать сумму ряда для введенного К.



24-50.Дано натуральное число N, не превосходящее 108. Необходимо найти и вывести число, которое получится при записи N справа налево и удалении всех единиц. Ведущие нули выводить не надо. Если в числе N нет цифр кроме единиц и нулей, необходимо вывести 0. Например, при вводе числа 1984 нужно вывести 489, а при вводе 2001 нужно вывести 2. Для решения этой задачи ученик написал такую программу:

var n, m: longint;

d: integer;

begin

read(n);

m := 0;

while n=1 do begin

d := n mod 10;

if d 1 then begin

m := 10*d + m;

end;

n:= (n – d) div 10;

end;

write(m);

end.

Последовательно выполните следующее.

  1. Напишите, что выведет эта программа при вводе числа 1984.

  2. Приведите пример числа, при вводе которого программа выдаст верный ответ.

  3. Найдите все ошибки в этой программе (их может быть одна или несколько). Для каждой ошибки: выпишите строку, в которой сделана ошибка, и приведите правильный вариант строки.

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

24-54.Требовалось написать программу, при выполнении которой с клавиатуры считывается натуральное число x, не превосходящее 1000, и выводится количество значащих цифр в двоичной записи этого числа. Программист торопился и написал программу неправильно.

var x,cnt: integer;

begin

readln(x);

cnt := 0;

while x 0 do begin

cnt:=cnt + x mod 2;

x := x div 10

end;

writeln(cnt)

end.

Последовательно выполните следующее:

1. Напишите, что выведет эта программа при вводе числа 15.

2. Приведите пример такого числа x, что, несмотря на ошибки, программа печатает правильный ответ.

3. Найдите все ошибки в этой программе (их может быть одна или несколько). Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк. Для каждой ошибки:

1) выпишите строку, в которой сделана ошибка;

2) укажите, как исправить ошибку, т.е. приведите правильный вариант строки.

24-56.Для заданного положительного вещественного числа A необходимо найти минимальное целое число K, при котором выполняется неравенство . Для решения этой задачи ученик написал такую программу:

var a, s: real;

k: integer;

begin

read(a);

k := 1;

s := 1;

while sa do begin

k := k + 1;

s := 1.0/k;

end;

write(k);

end.

Последовательно выполните следующее.

1. Напишите, что выведет эта программа при вводе числа 0.4.

2. Сколько существует натуральных чисел А, при вводе которых программа выведет ответ 2?

3. Найдите в программе все ошибки (их может быть одна или несколько). Для каждой ошибки выпишите строку, в которой она допущена, и приведите эту же строку в исправленном виде.