В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
NoName2op
NoName2op
13.09.2022 10:07 •  Информатика

Решить на любом языке программирования
непустая строка, содержащая некоторое слово, называется палиндромом, если это слово одинаково читается как слева направо, так и справа налево. пусть дана строка, в которой записано слово  s, состоящее из  n  прописных букв латинского алфавита. вычёркиванием из этого слова некоторого набора символов можно получить строку, которая будет палиндромом. требуется найти количество вычёркивания из данного слова некоторого (возможно, пустого) набора символов таких, что полученная в результате строка являлась палиндромом различающиеся порядком вычёркивания символов, считаются одинаковыми.

ограничения: 1 < =  n  < = 60.

Показать ответ
Ответ:
taisia2305
taisia2305
21.01.2021 05:06

var

   a, chet, nechet : integer;

   

begin

   write('введите число: ');

   readln(a);

   while a > 0 do begin

       if (a mod 10) mod 2 = 0then chet += 1 else nechet += 1;

       a := a div 10;

   end;

   writeln('четных: ', chet);

   writeln('не четных: ', nechet);

end.

программа считает 0 как четное число. Если нужно что бы 0 не учитывался при подсчете то необходимо строку:

if (a mod 10) mod 2 = 0then chet += 1 else nechet += 1;

заменить на:

if a mod 10 <> 0 then if (a mod 10) mod 2 = 0then chet += 1 else nechet += 1;

0,0(0 оценок)
Ответ:
Амаpил1768
Амаpил1768
30.01.2022 01:52
Языки программирования

Я обращусь к низкоуровневому C++. У него нет типа byte, зато аналог ему - это unsigned char. Напишем простенькую программу:

#include <iostream>int main() {        std::cout << sizeof(unsigned char);        return 0;}

Выполним её и получим ответом число 1.

Что это и откуда оно взялось?

sizeof - это оператор, принимающий какой-то тип или переменную и возвращающий количество байт, занимаемое в памяти этой переменной. Грубо говоря - Вы просите швею измерить Вашу талию: даёте ей измерить себя, а в ответ получаете обхват талии. Отсюда и выходит ответ, что занимаемое место в памяти типом byte равняется 1 байту.

Более глубокое объяснение происхождения числа 1

Нам понадобится формула \tt\displaystyle N = 2^i, где N - это количество информации, а i - количество бит, отведённое на неё. У нас есть промежуток - это значения от 0 до 127. Всего значений получается 128. Если не верите - пересчитайте. Итак, подставим:

\tt\displaystyle 128 = 2^i\\\\128 = 2^7\implies i = 7

Мы получили количество бит, которое впритык занимает переменная в памяти. К радости, компьютеры устроены так, что память не делится на выделяемое переменной пространство (не создаются ячейки по 7 бит, 9 бит, 11 бит и так далее). Если программа выделила под переменную 7 бит, то компьютер выделит 2³ бит (8 бит ⇒ 1 байт), в котором переменная будет хорошо себя чувствовать и не тесниться. Приведу ещё пример для ясности:

Если переменная занимает 122 бита (это фантастика, но для примера сойдёт), то выделится 2⁷, поскольку:

2⁶ < 122 < 2⁷. Почему не 2⁶? Было бы смешно, если переменная, которая занимает 122 бит, занимала бы ячейку памяти в 64 бит. Это то же самое, если бы Вы поместили слона в коробку из-под спичек. Почему не 2⁸ или, например, не 2⁹⁹⁹⁹⁹⁹? А зачем компьютеру выделять такое пространство, если можно выделить наименьшее и быть в плюсе? Это то же самое, если бы Вы выделили для муравья десятиэтажный дом.

ответ

1 байт

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота