Задание 11. Подсчитать S - количество четных цифр в десятичной записи целого неотрицательного числа n, не большего 100000

1. Условие:

Подсчитать S - количество четных цифр в десятичной записи целого неотрицательного числа n, не большего 100000.

2. Математическая модель:

Четные числа делятся на 2 без остатка.

3. Таблица внешних спецификаций:

Таблица 1.

No Имя Назначение Тип Ед. изм. ОДЗ
  n число целое. - -1<n<100000
  s Количество четных цифр целое - положительное
  m Вспомогательная переменная целое - положительное
  SOOB1 Сообщение текст - 1 вид
  SOOB2 Сообщение текст - 1 вид

Сообщения:

c1: ‘Введи целое число <= 100000: ’

c2: ‘'В числе: ', n, ' четных цифр:', s’

4. Таблица тестов:

Таблица 2.

№ теста Исходные данные Результат Примечания
  n s
       
       
       

5. Алгоритмизация:

Блок-схема алгоритма (рис. 1):

Рис. 1. Блок-схема алгоритма

6. Кодирование алгоритма:

Program kontr11;

Var

m, n: longint;

s: integer;

Begin

Write('Введи целое число <= 100000: ');

repeat

Readln(n);

until n <=100000;

s:= 0;

m:= n;

While m<>0 do begin

m:= m Div 10;

if m mod 2 = 0 then s:= s+1;

end;

Writeln ('В числе: ', n, ' четных цифр:', s);

End.

Задание 16.

1. Условие:

Дано натуральное N. Выяснить, входит ли цифра 3 в запись числа.

2. Математическая модель:

Натуральные числа больше 0.

3. Таблица внешних спецификаций:

Таблица 1.

No Имя Назначение Тип Ед. изм. ОДЗ
  n число целое. - положительное
  с Анализируемое число целое - положительное
  yes Вспомогательная переменная Булевое -  
  SOOB1 Сообщение текст - 1 вид
  SOOB2 Сообщение текст - 1 вид
  SOOB3 Сообщение текст - 2 вида

Сообщения:

c1: ‘Введите n: ’

c2: ‘n^2 =’

c3: ‘Цифра 3 есть в числе’

c4: ‘Цифры 3 нет в числе’

4. Таблица тестов:

Таблица 2.

№ теста Исходные данные Результат Примечания
  n yes
    false N^2 = 15129 Цифры 3 нет в числе
    true N^2 = 361 Цифра 3 есть в числе

5. Алгоритмизация:

Блок-схема алгоритма (рис. 1):

Рис. 1. Блок-схема алгоритма

6. Кодирование алгоритма:

Program kontr16;

var

n, c:integer;

yes: boolean;

begin

cls;

write('Введите n: ');

readln(n);

n:=n*n;

writeln('n^2 = ', n);

yes:= false;

while n>0 do begin

c:=n mod 10;

if c=3 then begin

yes:= true;

n:= 0;

end;

n:= n div 10;

end;

if yes then

writeln('Цифра 3 есть в числе')

else

writeln('Цифры 3 нет в числе');

readln;

end.

Задание 17.

1. Условие:

Дано натуральное число N. Вычислить произведение первых N сомножителей (1/2)(3/4)(5/6)

2. Математическая модель:

Число N должно быть четным для образования пары чисел.

3. Таблица внешних спецификаций:

Таблица 1.

No Имя Назначение Тип Ед. изм. ОДЗ
  n число целое. - Положительное четное
  res результат вещ - любое
  i Вспомогательная переменная целое - Больше 0
  SOOB1 Сообщение текст - 1 вид
  SOOB2 Сообщение текст - 1 вид

Сообщения:

c1: ‘Введите n (четное): ’

c2: ‘Результат: ’


4. Таблица тестов:

Таблица 2.

№ теста Исходные данные Результат Примечания
  n res
    0.375  
    0.112  
    0.080  

5. Алгоритмизация:

Блок-схема алгоритма (рис. 1):

Рис. 1. Блок-схема алгоритма

6. Кодирование алгоритма:

Program kontr16;

var

n, c:integer;

yes: boolean;

begin

cls;

write('Введите n: ');

readln(n);

n:=n*n;

writeln('n^2 = ', n);

yes:= false;

while n>0 do begin

c:=n mod 10;

if c=3 then begin

yes:= true;

n:= 0;

end;

n:= n div 10;

end;

if yes then

writeln('Цифра 3 есть в числе')

else

writeln('Цифры 3 нет в числе');

readln;

end.

Задание 24д.

1. Условие:

Продолжить последовательность и составить программу, печатающую N чисел данной последовательности: 1, -2, 4, -8, 16, -32, ___, ___

2. Математическая модель:

Отрицательные числа получаем умножением положительного на -1

3. Таблица внешних спецификаций:

Таблица 1.

No Имя Назначение Тип Ед. изм. ОДЗ
  n число целое. - положительное
  c Результат умножения целое - любое
  i Вспомогательная переменная целое - положительное
  SOOB1 Сообщение текст - 1 вид
  SOOB2 Сообщение текст - 2 вида

Сообщения:

c1: ‘Введите n: ’

c2: ‘i, ’

c3: ‘-i, ’

4. Таблица тестов:

Таблица 2.

№ теста Исходные данные Результат вывода Примечания
  n  
    1, -2, 4, -8, 16, -32,  
    1, -2, 4, -8, 16, -32, 64, -128, 256, -512  

5. Алгоритмизация:

Блок-схема алгоритма (рис. 1):

Рис. 1. Блок-схема алгоритма

6. Кодирование алгоритма:

Program kontr24d;

var

n: integer;

c: integer;

i: integer;

begin

cls;

write('Введите n: ');

readln(n);

for i:= 1 to n do begin

if i=1 then

c:= 1

else

c:= c*2;

if i mod 2=0 then

write(c*-1, ', ')

else

write(c, ', ');

end;

end.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: