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

На входе программы подается 8-разрядное двоичное число, необходимо найти количество единиц и нулей составляющих это число паскаль

👇
Ответ:
Scipelex76
Scipelex76
25.04.2020
var 
x: string;

begin 
readln(x); 
write('Единиц '); 
writeln(x.Where(x -> x = '1').Count); 
write('Нулей ');   
writeln(8 - x.Where(x -> x = '1').Count);  
end.

Пример
00011111
5
3
4,4(29 оценок)
Ответ:
Masha07041
Masha07041
25.04.2020
1. Современный вариант
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!

begin
  ReadlnString.GroupBy(c->c).Select(x->(x.Key,x.Count)).OrderBy(x->x[0])
    .Select(x->Format('"{0}" - {1}',x[0],x[1])).Println(NewLine)
end.

Пример
10101110
"0" - 3
"1" - 5

2. Школьный вариант в стиле Pascal ABC, Free Pascal

var
  s:string;
  i,k0,k1:integer;
begin
  Readln(s);
  k0:=0; k1:=0;
  for i:=1 to Length(s) do
    if s[i]='0' then Inc(k0) else Inc(k1);
  Writeln('"0" - ',k0);
  Writeln('"1" - ',k1)
end.

Вывод результатов точно такой же, как и выше.
4,4(74 оценок)
Открыть все ответы
Ответ:
annvs1
annvs1
25.04.2020
Все в паскале:
1. Формула пути S=V*t,V=S/t;
    Значит программа имеет вид
var s, v, t:integer;
begin
writeln('Введите путь и время');
readln(s, t);
v:=s/t
writeln('ответ: V=', v);
end.
Все остальное по анологии

Во 2 и 3 y:=/формула в условии/ и выводишь у
В 4, воспользуйся формулой площади S=a*b (a и b - ширина с длинной)
В 5 a=P-2*b  (а основание, b бок сторона)
В 7 o=(a+b+c)/3 (о - ср., а, b, c - число в классах)
8.
var a, b:integer;
begin
writeln('Введите числа');
readln(a, b);
writeln('Сумма=', a+b);
writeln('Разность=', a-b);
end.
В 9 как 8, только вместо + и - надо * И /
4,5(14 оценок)
Ответ:
MashaSay
MashaSay
25.04.2020
ответ: 359.

Решение. 
Начнём с простого наблюдения.

Лемма. Если на каком-то шаге все куски одинаковой массы m, то можно путём указанных операций сделать так, чтобы все куски стали массой m/2.
Доказательство. На первом шаге съедаем кусок массы m и разрезаем другой кусок массы m. Получится 8 кусков массы m и 2 куска массы m/2. Теперь 8 раз съедаем куски m/2 и распиливаем куски массы m.

Перейдём к собственно решению. Понятно, что Саша не мог съесть весь сыр. Поэтому, поскольку он съел целое число граммов сыра, он мог съесть не более, чем 360 - 1 = 359 граммов. Покажем, как он это мог сделать.

Пусть изначально головка сыра была разрезана так: 5 кусков по 512/9 г, 2 куска по 256/9 г, 1 кусок 128/9 г, 1 кусок 32/9 г, 1 кусок 8/9 г (легко проверить, что сумма всех масс равна 360).

Сначала съедим куски массой 8/9, 32/9, 128/9 и распилим три куска по 512/9 г. Останется 2 куска по 512/9 и 8 кусков по 256/9. Затем дважды съедим куски по 256/9 и разрежем оставшиеся куски по 512/9. После этого будет 10 кусков по 256/9.

Уменьшим размер каждого куска в 256 раз (воспользуемся 8 раз процессом, описанным в лемме). Тогда останутся 10 кусков массой 1/9 г. Съедаем один кусок и распиливаем любой оставшийся кусок. Несъеденная масса 9 * 1/9 = 1 г, значил, съел Саша 360 - 1 = 359 г сыра.
4,6(74 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ