Для матрицы из 3 строк и 7 столбцов отпечатать номер каждого столбца, в котором значение его наибольшего элемента оказалось меньше заданной величины, и число таких элементов. решить в с++
#include <iostream> int main(){ int arr[3][7]; /*for (int* i = *arr; (i - *arr) < 21; i++) *i = i-*arr;*/ const int VALUE = 11; // int max; int count = 0; for (int x = 0; x < 7; x++) { max = arr[0][x]; for (int y = 0; y < 3; y++) { if (max < arr[y][x]) max = arr[y][x]; } if (max < VALUE) { std::cout << "Наибольший элемент столбца " << x + 1 << " меньше заданной величины." << std::endl; count++; } } std::cout << count << " столбцов не соответсвуют условию." << std::endl; return 0; }
Yelena642
05.04.2023
// PascalABC.Net 3.0, сборка 1052 const k=5; minT=-60; maxT=60; Umax=4.8; var Ut,s,meanT:real; ring:array[1..k] of real; i,p:byte; begin { Модерируем работу за 25 с } Randomize; s:=0; { Выход на рабочий режим } for i:=1 to k do begin Ut:=0.3*Random+3; { колебания напряжения от 3 до 3.3В } ring[i]:=minT+(maxT-minT)*Ut/Umax; s:=s+ring[i] end; meanT:=s/k; Writeln('t=',k:2,'c, средняя температура= ',meanT:6:2); { Рабочий режим } for i:=k+1 to 25 do begin Ut:=0.3*Random+3; { колебания напряжения от 3 до 3.3В } p:=i mod k; if p=0 then p:=k; s:=s-ring[p]; ring[p]:=minT+(maxT-minT)*Ut/Umax; s:=s+ring[p]; meanT:=s/k; Writeln('t=',i:2,'c, средняя температура= ',meanT:6:2); end end.
Тестовое решение: t= 5c, средняя температура= 19.61 t= 6c, средняя температура= 20.35 t= 7c, средняя температура= 20.60 t= 8c, средняя температура= 19.68 t= 9c, средняя температура= 20.03 t=10c, средняя температура= 19.17 t=11c, средняя температура= 18.06 t=12c, средняя температура= 17.16 t=13c, средняя температура= 18.15 t=14c, средняя температура= 18.01 t=15c, средняя температура= 18.25 t=16c, средняя температура= 19.44 t=17c, средняя температура= 19.71 t=18c, средняя температура= 18.80 t=19c, средняя температура= 18.54 t=20c, средняя температура= 19.36 t=21c, средняя температура= 19.57 t=22c, средняя температура= 20.20 t=23c, средняя температура= 20.65 t=24c, средняя температура= 20.97 t=25c, средняя температура= 20.46
Fedorova_79166180822
05.04.2023
Решение 1.
Представим таблицу в виде: (см. Рис. 1) Получаем уравнение 8 + b1 + 4 = 2*b1 + (b1+2) + 4 Отсюда: b1 = 3. Получаем (см. Рис. 2)
Далее, заметим, что сумма по горизонтали и по диагонали равна 15. Заполняем таблицу (см. Рис. 3)
ответ: С2 = 9
Решение 2.
Заданным свойством (иметь одинаковую сумму по горизонталям, вертикалям и диагоналям) обладает единственный МАГИЧЕСКИЙ КВАДРАТ (не учитывая его повороты и отражения относительно осей). Это магический квадрат 3х3 с магической суммой 15 (см. Рис. 4)
int main(){
int arr[3][7]; /*for (int* i = *arr; (i - *arr) < 21; i++) *i = i-*arr;*/
const int VALUE = 11;
//
int max; int count = 0;
for (int x = 0; x < 7; x++) {
max = arr[0][x];
for (int y = 0; y < 3; y++) {
if (max < arr[y][x]) max = arr[y][x];
}
if (max < VALUE) {
std::cout << "Наибольший элемент столбца " << x + 1 << " меньше заданной величины." << std::endl;
count++;
}
}
std::cout << count << " столбцов не соответсвуют условию." << std::endl;
return 0;
}