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

Дано натуральное число n.определить сколько в числе нулей.pascal abc

👇
Ответ:
малинка20177
малинка20177
11.12.2020
1. "Школьное" решение

//PascalABC.Net 3.0, сборка 1064
var
  s:string;
  i,k:integer;
begin
  Write('Введите натуральное число: '); Readln(s);
  k:=0;
  for i:=1 to Length(s) do
    if s[i]='0' then Inc(k);
  Writeln('Количество нулей в записи числа равно ',k)
end.

Пример:
Введите натуральное число: 13054000230
Количество нулей в записи числа равно 5

2. Современное решение

//PascalABC.Net 3.0, сборка 1064
begin
  var s:=ReadString('Введите натуральное число: ');
  Writeln('Количество нулей в запиcи числа равно ',s.Where(x->x='0').Count)
end.

Пример:
Введите натуральное число:  13054000230
Количество нулей в записи числа равно 5
4,8(98 оценок)
Ответ:
musalimovvlad
musalimovvlad
11.12.2020
Var n,i:longint; begin read (n); i:=0; repeat if (n mod 10 = 0) then i:=i+1; n:= n div 10; until (n=0); writeln(i); End.
4,4(33 оценок)
Открыть все ответы
Ответ:
eminhesenov20
eminhesenov20
11.12.2020

from random import randint

# Создание списка,

# его сортировка по возрастанию

# и вывод на экран

a = []

for i in range(10):

   a.append(randint(1, 50))

a.sort()

print(a)

# искомое число

value = int(input())

mid = len(a) // 2

low = 0

high = len(a) - 1

while a[mid] != value and low <= high:

   if value > a[mid]:

       low = mid + 1

   else:

       high = mid - 1

   mid = (low + high) // 2

if low > high:

   print("Такого значения нет")

else:

   if (mid == 0 and a[1] != a[0]) or (mid == len(a) - 1 and a[mid - 1] != a[mid]):

       print(1)

   else:

       q = 0

       for i in range(mid, len(a)):

           if a[i] == a[mid]:

               q += 1

           else:

               break

       for i in range(mid - 1, 0, -1):

           if a[i] == a[mid]:

               q += 1

           else:

               break

       print(q)

Чтобы убрать вывод массива просто на 10-й строке убери print(a), а для  вывода неотсортированного массива вставь после 8-й строки.

4,5(78 оценок)
Ответ:
angelinalitvine
angelinalitvine
11.12.2020

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

Вот мои версии.

 

а. 1; 3; 6; 4; 11; 5; 16; 6 (на нечётных местах всё время +5, на чётных +1)

 

б. 9; 7; 10; 4; 11; 1; 12; -2; ... (на нечётных +1, на чётных -3)

 

в. 3; 2; 1; 6; 5; 4; 9; 8; 7; 12; 11; 10... (тройки n;n-1;n-2; первое число тройки - последовательные числа, кратные 3)

 

Могу предложить ещё несколько ДРУГИХ вариантов продолжения последовательностей и все они, повторюсь, будут ПРАВИЛЬНЫМИ. 

Одно только замечание: ВСЕГДА нужно указывать алгоритм или формулу, по которой последовательность строится(продолжается).

 

4,5(70 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ