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

4. мозаика
ограничение времени 1 секунда
ограничение памяти 64mb
ввод стандартный ввод или input.txt
вывод стандартный вывод или output.txt
мальчик вася хочет стать успешным программистом, но при этом много времени посвящает компьютерным играм. поэтому он не может вовремя делать и часто засыпает на уроках. однажды родители в наказание за плохие отметки в школе лишили васю компьютера и смартфона. тогда он решил скоротать время, собирая мозаику. мозаика представляет собой прямоугольное поле, разбитое на квадратики единичного размера. поле имеет ширину n и длину m. мозаика частично уже сложена, поэтому васе нужно разложить оставшиеся кусочки. ему сделать это. каждый кусочек представляет собой квадрат 3x3, в котором некоторые клетки пустые. его можно поворачивать, но нельзя переворачивать.

формат ввода
в первой строке заданы три целых числа n, m и k (3 ≤ n, m ≤ 8, 1 ≤ k ≤ 10). в последующих n строках идет описание поля. каждая строка имеет длину m и состоит из символов '#' и '.', которые обозначают занятую и пустую клетки соответственно.

далее идет k блоков по три строки описание кусочков. каждый кусочек описывается тремя трехсимвольными строками, содержащими символы '#' и '.', которые обозначают занятую и пустую клетки соответственно.

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

пример 1
ввод вывод
5 5 3
###..
##.##
#
##
##

###
###
###



.#.

.##

..#
###22
##1##
#0002
#000#
#000#
пример 2
ввод вывод
3 3 1
#.#

.##

..#
###
.#.
#0#
000
0##

Показать ответ
Ответ:
elena090107
elena090107
28.05.2022 16:04

#include <iostream>

using namespace std;

int main()

{

   int number;

   int positive = 0;

   int negative = 0;

   int amount = 0;

   cin >> number;

   while (number != 0)

   {

       amount += number;

       if (number > 0)

       {

           positive++;

       }

       else if (number < 0)

       {

           negative++;

       }

       cin >> number;

   }

   cout << amount << endl << positive - negative;

}

Объяснение:

#include <iostream> // Библиотека ввода - вывода

using namespace std; // Пространство имён

int main()

{

   int number; // Целочисленная переменная для хранения вводимых с клавиатуры чисел

   int positive = 0; // Целочисленная переменная для хранения количества положительных чисел

   int negative = 0; // Целочисленная переменная для хранения количества отрицательных чисел

   int amount = 0; // Целочисленная переменная для хранения суммы чисел последовательности

   cin >> number; // Вводим число с клавиатуры

   while (number != 0) // Пока значение переменной number ≠ 0

   {

       amount += number; // Суммируем

       if (number > 0) // Если значение переменной number - положительное

       {

           positive++; // Добавляем единицу

       }

       else if (number < 0) // Если значение переменной number - отрицательное

       {

           negative++; // Добавляем единицу

       }

       cin >> number; // Вводим число с клавиатуры

   }

   cout << amount << endl << positive - negative; // Выводим сумму чисел последовательности и разность между количеством положительных и отрицательных

}

0,0(0 оценок)
Ответ:
Rj7
Rj7
06.05.2023 15:31

То же задание, только другой вывод? Ну, вот например, несколько вариантов (все выводят одно и то же- ну, если конечно на вход подавать число, указанное в задании, а не что попало :)

1) текстовый вариант (запрашиваемое число вводится сразу в текстовом виде):

алг

нач

лит т

вывод "Введите четырёхзначное число",нс

ввод т

вывод т[1],"+",т[2],"=",Цел(т[1],0)+Цел(т[2],0),", "

вывод т[3],"*",т[4],"=",Цел(т[3],0)*Цел(т[4],0)

кон

2) числовой вариант (простой):

алг

нач

цел а,б,в,г,д

вывод "Введите четырёхзначное число",нс

ввод а

д:=mod(а,10);а:=div(а,10)

г:=mod(а,10);а:=div(а,10)

в:=mod(а,10);а:=div(а,10)

б:=mod(а,10)

вывод б,"+",в,"=",б+в,", ",г,"*",д,"=",г*д

кон

3) числовой вариант (так себе):

алг

нач

цел а,ц

цел таб т[1:4]

вывод "Введите четырёхзначное число",нс

ввод а

нц для ц от 1 до 4

т[ц]:=mod(а,10)

а:=div(а,10)

кц

вывод т[4],"+",т[3],"=",т[4]+т[3],", ",т[2],"*",т[1],"=",т[2]*т[1]

кон

4) число-текстовый вариант (ерунда какая то, типа если не очень то, что в первом варианте число вводится как текст) -цикл перевода сделан для разнообразия, и так то заменяется одним алгоритмом, переводящим всё число сразу- цел_в_лит(а),  при этом и начальное значение  т  задавать не надо.

алг

нач

цел а

лит т=""

вывод "Введите четырёхзначное число",нс

ввод а

нц 4 раз

т:=символ(48+mod(а,10))+т

а:=div(а,10)

кц

вывод т[1],"+",т[2],"=",Цел(т[1],0)+Цел(т[2],0),", "

вывод т[3],"*",т[4],"=",Цел(т[3],0)*Цел(т[4],0)

кон

5) числовой вариант (непойми что и сбоку бантик):

алг

нач

цел а,б,в,н,ц

цел таб т[1:4]

вывод "Введите четырёхзначное число",нс

ввод а

нц для н от 1 до 4

а:=mod(а,10**(5-н))

т[н]:=div(а,10**(4-н))

в:=т[н]

ц:=div(н,4)

если 2*ц=н-2 то

вывод б,символ(43-ц),в,"=",б+в-(б+в-б*в)*ц,символ(44-12*ц)," " все

б:=т[н]

кц

кон


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