М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
ilyhan787228
ilyhan787228
05.03.2020 23:59 •  Информатика

Ваня собирается нарядить елку. чтобы это сделать, он представил елку в виде n уровней. ваня решил, что с каждым уровнем, количество игрушек на этом уровне елки будет на два больше чем на предыдущем. таким образом, он использовал одну игрушку, чтобы нарядить первый уровень, три - второй уровень, пять - третий уровень, и так до уровня n (известно, что на уровне n количество игрушек 2 * n-1). сколько игрушек купил ваня, если он нарядил все n уровней. формат водных данных на единственной строке находится число n - количество уровней, на которые ваня разделил елку. формат выходных данных на единственной строке введите количество игрушек, которые были куплены ваней. пример ввод n: 2 - вывод 4, n: 3 - вывод 9.

👇
Ответ:
дархан23
дархан23
05.03.2020
Var n,k,i:integer;
begin
write('n = ');
readln(n);
k:=1;
for i:=2 to n do k:=k+(2*i-1);
writeln(k);
end.

Пример:
n = 3
9
4,7(34 оценок)
Открыть все ответы
Ответ:
Dinobot774
Dinobot774
05.03.2020

Задача 10.

var

 flag, a: integer;

 n: longint;

begin

 Write('n -> '); Readln(n);

 flag := 0;

 

 while (n <> 0) do

 begin

   a := n mod 10;

   if (a = 3) then flag := 1;

   n := n div 10;

 end;

 

 if (flag = 1) then Writeln('Цифра 3 есть в записи числа')

 else Writeln('Цифры 3 не встречается в записи числа');

 Readln;

end.

Задача 11.

var

 a, flag_2, flag_5: integer;

 n: longint;

begin

 Write('n -> ');

 Readln(n);

 

 flag_2 := 0;

 flag_5 := 0;

 repeat

   a := n mod 10;

   

   if (a = 2) then flag_2 := 1

   else if (a = 5) then flag_5 := 1;

   

   n := n div 10;

 until n = 0;  

 

 if (flag_2 = 1) and (flag_5 = 1) then Writeln('Цифры 2 и 5 есть в записи числа')

 else if (flag_2 = 1) and (flag_5 = 0) then Writeln('В записи числа присутствует цифра 2, но отсутствует цифра  5')

 else if (flag_2 = 0) and (flag_5 = 1) then Writeln('В записи числа присутствует цифра 5, но отсутствует цифра  2')

 else Writeln('Цифры 2 и 5 не встречаются в записи числа');

 Readln;

end.

Задача 13.

var

 a, k, i: integer;

 n: longint;

begin

 write('n -> ');

 Readln(n);

 Write('k -> ');

 Readln(k);

    i := 0;

 repeat

   a := n mod 10;

   if a = 5 then i := i + 1;

   n := n div 10;  

 until n = 0;

 

 if (i > k) then Writeln('Не верно')

 else Writeln('Верно');

 Readln;

end.

Задача 14.

var

 a, k_0, k_9: integer;

 n: longint;

begin

 write('n -> ');

 Readln(n);

 

 k_0 := 0;

 k_9 := 0;

 repeat

   a := n mod 10;

   if a = 0 then k_0 := k_0 + 1

   else if a = 9 then k_9 := k_9 + 1;

   n := n div 10;  

 until n = 0;

 if (k_0 > k_9) then Writeln('Нолей больше')

 else if (k_9 > k_0) then Writeln('Девяток больше')

 else if (k_9 = 0) and (k_0 = 0) then Writeln('В числе отсутствуют 0 и 9')

 else Writeln('Их одинаковое количество');

 Readln;

end.

Задача 15.

var

 min, a: integer;

 n: longint;

begin

 write('n -> ');

 Readln(n);

 min:=10;

 while n <> 0 do

   begin

   a := n mod 10;

   if a < min then min := a;

   n := n div 10;  

 end;

 Writeln('Минимальная цифра ', min);

 Readln;

end.

Задача 16.

var

 first_digit, last_digit, k: integer;

 n: longint;

begin

 write('n -> ');

 Readln(n);

 

 k := 1;

 // найдём разряд последней цифры в числе

 while n div k >= 10 do

 begin

   k := k * 10

 end;

 

 // первая цифра

 first_digit := n mod 10;

 // последняя цифра

 last_digit := n div k;

 

 // если первая и последняя цифра числа равны то нет необходимости менять первую и последнюю цифру местами

 if (first_digit = last_digit) then

   Write(n)

 else

   Writeln(first_digit * k + (n mod k div 10) * 10 + last_digit);

end.

4,6(82 оценок)
Ответ:
Марс2014
Марс2014
05.03.2020
Задача, аналогичная той, которую публиковали вчера. Только цикл repeat заменяем на while.

Сначала немного математики.
\displaystyle a_n= \frac{n!}{(2n)!}=\frac{\prod_{i=1}^ni}{\prod_{i=1}^{2n}i}=\frac{\prod_{i=1}^ni}{\prod_{i=1}^{n}i\times\prod_{i=n+1}^{2n}i}=\frac{1}{\prod_{i=n+1}^{2n}i}; \quad n\in\mathbb N
О модуле тут смысла нет говорить, поскольку все an - суть положительные величины на интервале (0;1).

uses Crt;

function ai(n:integer):real;
var
  i:integer;
  p:real;
begin
  p:=1;
  for i:=n+1 to 2*n do p:=p*i;
  ai:=1/p
end;

var
  i:integer;
  eps,s,an:real;
begin
  ClrScr;
  Write('eps='); Read(eps);
  s:=0; i:=1; an:=eps+1;
  while an>=eps do begin
     an:=ai(i);
     if an>=eps then begin s:=s+an; Inc(i) end
  end;
  Writeln('s=',s);
  ReadKey
end.

Тестовые решения:
eps=0.07
s= 5.8333333333E-01

eps=0.000001
s= 5.9229647667E-01

eps=1e-8
s= 5.9229653448E-01

Для контроля результата можно отметить, что сумма первых 1000 членов ряда равна приблизительно 5.922965365Е-01

Если раздражает наличие функции, можно и без нее:
uses Crt;

var
  i,j:integer;
  eps,s,an,p:real;
begin
  ClrScr;
  Write('eps='); Read(eps);
  s:=0; i:=1; an:=eps+1;
  while an>=eps do begin
    p:=1;
    for j:=i+1 to 2*i do p:=p*j;
    an:=1/p;
    if an>=eps then begin s:=s+an; Inc(i) end
  end;
  Writeln('s=',s);
  ReadKey
end.
4,4(84 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ