Обозначим Б - число быков, К - число коров, Т - число телят. Тогда можно записать, что Б+К+Т=100 (1) 10Б+5К+0.5Т=100 (2) Из (2) найдем ограничения на количества Б, К, и Т. Б ∈ [0;10], К ∈ [0;20]. Из (1) находим, что Т=100-Б-К, Т - четное (иначе сумма не будет целой). Эти ограничения позволят правильно построить циклы в программе.
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin for var Б:=0 to 10 do for var K:=0 to 20 do begin var T:=100-Б-K; // из уравнения (1) if T.IsEven and (10*Б+5*K+T div 2=100) then Writeln(Б,'Б, ',K,'K, ',T,'T') end end.
Тогда можно записать, что
Б+К+Т=100 (1)
10Б+5К+0.5Т=100 (2)
Из (2) найдем ограничения на количества Б, К, и Т.
Б ∈ [0;10], К ∈ [0;20].
Из (1) находим, что Т=100-Б-К, Т - четное (иначе сумма не будет целой).
Эти ограничения позволят правильно построить циклы в программе.
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!
begin
for var Б:=0 to 10 do
for var K:=0 to 20 do begin
var T:=100-Б-K; // из уравнения (1)
if T.IsEven and (10*Б+5*K+T div 2=100) then
Writeln(Б,'Б, ',K,'K, ',T,'T')
end
end.
Результат
1Б, 9K, 90T
Объяснение:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int n, m;
cin » n » m;// массив M на N(M-строки;N-столбцы)
vector <vector<int> > a(n, vector<int>(m, 0));// создание двумерного массива
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
cin » a[i][j];// заполнение массива
int counter_beging = 0, counter_end = 0;// счетчики первой и второй строки
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
if (i == 0)// первая строка
counter_beging += a[i][j];
if (i == n - 1)//последняя строка
counter_end += a[i][j];
}
}
cout « "сумма чисел 1 строки:" « counter_beging « endl;//вывод результата
cout « "сумма чисел "« n «" последней строки:"« counter_end;
return 0;
}