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

Посмотрите програмку (паскаль) она выполняет 2 : 1 - находит максимальные элементы и делит их на 2 2- ищет минимальный элемент ниже побочной диагонали все бы ничего, но по отдельности программы работают в идеале, но как только совмещаю их в одну, то начинают выдавать неверные ответы что не так? program ш1; var i,j,n,m,max,min: integer; a: array[1..10,1..10] of integer; begin read(n); read(m); for i: =1 to n do for j: =1 to m do begin readln(a[i,j]); max: =a[1,1]; if a[i,j] > max then max: = a[i,j]; end; max: = max div 2; writeln ('max',max); for i: =1 to n do begin write(' ': 5 * (n - i+1)); for j: =n-i+2 to n do begin write(a[i,j]: 5); if min > a[i,j] then min : = a[i,j]; end; writeln(); end; writeln('minimum: ', min); end.

👇
Ответ:
Andrey720
Andrey720
19.04.2020
Var
    i, j, n, max, min: integer;
    a: array[1..10, 1..10] of integer;

begin
    readln(n);
    for i := 1 to n do
    begin
        for j := 1 to n do
        begin
            a[i, j] := Random(-50, 50);
            //            readln(a[i, j]);
            if (i = 1) and (j = 1) then max := a[1, 1]; {инициализируем один раз а не каждый раз}
            if a[i, j] > max then max := a[i, j];
            
            write(a[i, j]:5);
        end;
        writeln();
    end;
    writeln('Maximum: ', max / 2);
    
    min := a[n, n]; {любой элемент ниже побочной диагонали}
    for i := 1 to n do
    begin
        for j := n - i + 2 to n do
        begin
            write(a[i, j]:5);
            if min > a[i, j] then min := a[i, j];
        end;
        writeln();
    end;
    writeln('Minimum: ', min);
end.
4,7(60 оценок)
Открыть все ответы
Ответ:
vika8330
vika8330
19.04.2020
Учитывая, что 8 букв можно переставить примерно 40 тысячами можно просто запустить поиск в ширину, сохранить для всех перестановок то, из какой строчки они получились, и потом восстановить ответ для строчки abcdefgh.

Код на python 3:
from queue import Queue

to_process = Queue()
to_process.put(("edghcbfa", None))
prec = {}

while not to_process.empty():
    s, prev = to_process.get()
    if s in prec:
        continue
    for i in range(7):
        for j in range(i + 1, 8):
            if i == 0:
                next_s = s[j::-1] + s[j+1:]
            else:
                next_s = s[:i] + s[j:i-1:-1] + s[j+1:]
            if next_s not in prec:
                to_process.put((next_s, s))
    prec[s] = prev

current = "abcdefgh"
print(current)
while prec[current] is not None:
    current = prec[current]
    print(current)

Вывод программы:
abcdefgh
edcbafgh
edcbhgfa
edbchgfa
edghcbfa

Соответственно, ответ такой:
G B
B C
H A
E A
4,4(55 оценок)
Ответ:
Нурик2266
Нурик2266
19.04.2020
Учитывая, что 8 букв можно переставить примерно 40 тысячами можно просто запустить поиск в ширину, сохранить для всех перестановок то, из какой строчки они получились, и потом восстановить ответ для строчки abcdefgh.

Код на python 3:
from queue import Queue

to_process = Queue()
to_process.put(("edghcbfa", None))
prec = {}

while not to_process.empty():
    s, prev = to_process.get()
    if s in prec:
        continue
    for i in range(7):
        for j in range(i + 1, 8):
            if i == 0:
                next_s = s[j::-1] + s[j+1:]
            else:
                next_s = s[:i] + s[j:i-1:-1] + s[j+1:]
            if next_s not in prec:
                to_process.put((next_s, s))
    prec[s] = prev

current = "abcdefgh"
print(current)
while prec[current] is not None:
    current = prec[current]
    print(current)

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