Здравтсвуйте, извиняюсь, что беспокою по мелочам (наверное), хотя для меня это кошмар просто. Нам задали задачи, но по функциям и массивам, но до двух я не могу никак додуматься.
1. Вводится последовательность целых чисел, 0 – конец последовательности. Определить минимальное простое число последовательности (функцией оформить проверку числа: результатом функции будет 1 – число простое, 0 - нет).
2. В матрице Y(m,m) найти максимальный элемент max1, находящийся на периметре матрицы, и максимальный элемент max2 вне периметра матрицы.
читать дальше
Подскажите, что сможете, пожалуйста. Это остались последние задания в этом семестре, а сделать не получается. Заранее брагодарна.
1. Вводится последовательность целых чисел, 0 – конец последовательности. Определить минимальное простое число последовательности (функцией оформить проверку числа: результатом функции будет 1 – число простое, 0 - нет).
2. В матрице Y(m,m) найти максимальный элемент max1, находящийся на периметре матрицы, и максимальный элемент max2 вне периметра матрицы.
читать дальше
Подскажите, что сможете, пожалуйста. Это остались последние задания в этом семестре, а сделать не получается. Заранее брагодарна.
К №1: По первой задаче: я вроде поняла что такое простые числа - это те, которые делятся только на 1 и на само себя. Но придумать как это написать в коде программы не смогла.
А значит проверять, будут ли делиться на все числа, меньшие самого себя и большие 1. Если делятся - False. В цикле вестимо.
К №2: Если есть матрица, предположим Y[i][j] (если не путаю синтаксис, но логика должна быть понятна), то будет четыре обхода для периметра: Y[0][j], Y[m-1][j], Y[j][0], Y[j][m-1] - где 0 <= i, j < m.
Для "внутри" соответственно: Y[i][j] где 0 < i, j < m-1, вложенными циклами (Один по i, другой по j).
2. Столбцы это те же строки, только сверху вниз, а не справа налево. Периметр это первый столбец (0,0)..(0,m), последний столбец (m.0)..(m,m), первая строка (0,0)..(m,0) и последняя строка (0,m)..(m,m). Для удобства нарисуйте себе на бумаге массивчик 3x3 и попробуйте написать работающий код для m=3. Меняется только одна координата, но нужно просмотреть 4 диапазона, поэтому будет 4 цикла подряд. Углы по два раза посчитаются, но это не проблема при таких условиях.
Внутри периметра - это ячейки с номерами от (1,1) до (m-1,m-1), обходятся двойным циклом без особых проблем.
Если у Вас проблемы с алгоритмикой, пишите в умыло, могу Вас поднатаскать.
№2.1: Если матрица квадратная (m,m) то можно обойтись и одним циклом: на каждой итерации выбирать максимальное из приведённых Yust@s значений Y[0][j], Y[m-1][j], Y[j][0], Y[j][m-1] и сравнивать с максимумом предыдущей итерации