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

1. Складіть алгоритм множення числа 12 на 4, використову- ючи додавання. Подайте його у словесній формі та у формі
блок-схеми.​

Показать ответ
Ответ:
repoli433
repoli433
21.06.2022 05:09
Дорога, соединяющая города i и j, даст единицу в две позиции - (i, j) и (j, i). Тогда общее количество единиц в матрице равно удвоенному числу дорог. Отсюда и простое решение - считать N^2 чисел, подсчитать количество единиц и поделить его на 2. Можно считать и сумму - от этого ничего не изменится.

   #include <iostream> 
   int main() {
       int n = 0, sum = 0, temp = 0;
       std :: cin >> n;
       for (int i = 0; i < n * n; i++) {
           std :: cin >> temp;
           sum += temp;
       }
       std :: cout << sum / 2;
       return 0;
   }
0,0(0 оценок)
Ответ:
круто45
круто45
09.03.2020 22:51
# # Код на ruby 2.2.3p173
def LineUpArraySize(num)
    cur_size = 4
    while num > cur_size
        cur_size = 2 * cur_size + 8
    end
    cur_size = 2 * cur_size + 8
end

def getSpiralNeighbours(num)
    a = []
    a[0] = [0, 0]
    a[1] = [-1, 1]
    moves = [[1, 0], [0, -1], [-1, 0], [0, 1]]
    move_direction = 0
    side_size = 2
    cur_size = 1
    cycle = 1
    mode_direction = 0
    for i in 2..LineUpArraySize(num)
        new_num = Array.new(2)
        new_num[0] = a.last[0] + moves[move_direction][0]
        new_num[1] = a.last[1] + moves[move_direction][1]
        a[i] = new_num
        # p new_num
        cur_size += 1

        if cur_size == side_size
            cur_size = 1
            move_direction = (move_direction + 1) % 4
            side_size += 1 if move_direction % 2 == 0
            cycle += 1 if move_direction == 0
        end
    end

    a.each_with_index do |i,x|
        p [x, i] if (i[0]-a[num][0]).abs <= 1 and  (i[1]-a[num][1]).abs <= 1
    end
end

getSpiralNeighbours(1090)

Вывод (числа и условные координаты)
[962, [15, 16]]
[1089, [15, 17]]
[1090, [16, 17]]
[1091, [16, 16]]
[1224, [15, 18]]
[1225, [16, 18]]
[1226, [17, 18]]
[1227, [17, 17]]
[1228, [17, 16]]
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота