Объяснение:
#include <ctime>
#include <cstdlib>
#include <iomanip>
#include <iostream>
using namespace std;
int max_row(int **a, int m, int c) {
int mr = 0;
for (int r = 1; r < m; ++r) if (a[mr][c] < a[r][c]) mr = r;
return mr;
}
int main() {
srand(time(0));
cout << "m n? ";
int m, n; cin >> m >> n;
cout << "\n матрица: \n";
int **a = new int *[m];
for (int r = 0; r < m; ++r) {
a[r] = new int[n];
for (int c = 0; c < n; ++c) cout << setw(4) << (a[r][c] = rand() % 1000);
cout << endl;
}
int mc = 0, mr = max_row(a, m, 0);
cout << "\n максимумы в столбцах: \n" << setw(4) << a[mr][0];
for (int c = 1; c < n; ++c) {
int cmr = max_row(a, m, c);
cout << setw(4) << a[cmr][c];
if (a[mr][mc] > a[cmr][c]) {
mc = c;
mr = cmr;
}
}
cout << "\n\n искомый элемент: a[" << mr << "][" << mc << "] = " << a[mr][mc] << endl;
return 0;
}
var slova, bukvy, slovo : string;
i, b, k, c, j, l, kolvo, dlina1, dlina2 : integer;
a : array[1..50] of string;
begin
Writeln('Введите слова');
Readln(slova);
Writeln('Введите буквы');
Readln(bukvy);
dlina1 := length(slova);
dlina2 := length(bukvy);
k := 1;
for i := 1 to dlina1 do
if slova[i] = ' ' then
k := k + 1;
writeln(k);
b := 1;
i := 1;
while i <= length(slova) do
begin
if (slova[i] <> ' ') and (i <> length(slova)) then
slovo := slovo + slova[i]
else
begin
a[b] := slovo;
slovo := '';
b := b + 1;
end;
i := i + 1;
end;
a[k] := a[k] + slova[length(slova)];
b := 0;
l := 0;
for i := 1 to 50 do
if a[i] <> '' then
begin
slovo := a[i];
for k := 1 to length(slovo) do
for c := 1 to length(bukvy) do
if slovo[k] = bukvy[c] then
j := j + 1;
if j = length(slovo) then
begin
writeln(slovo);
l := l + 1;
j := 0;
end;
end;
if l = 0 then
writeln('NO');
end.
Объяснение:
1 + «Кнопка 5» = 6 этаж
6 + «Кнопка -3» = 3 этаж
3 + «Кнопка 5» = 8 этаж
8 + «Кнопка -3» = 5 этаж
5 + «Кнопка -3» = 2 этаж
2 + «Кнопка 5» = 7 этаж
7 + «Кнопка -3» = 4 этаж
4 + «Кнопка 5» = 9 этаж
2)
Боря мог выиграть все 9 раз:
1. 3 раза Боря показал камень, Алёша – ножницы
2. 4 раза Боря показал ножницы, Алёша – бумагу
3. 2 раза Боря показал бумагу, Алёша – камень
Алёша мог выиграть не более 7 раз:
1. Алёша показывает камень, Боря показывает ножницы – 2 раза. - победа
2. Алёша показывает ножницы, Боря показывает бумагу – 2 раза. - победа
3. Алёша показывает бумагу, Боря показывает камень – 3 раза. - победа
4. Алёша показывает бумагу, Боря показывает ножницы – 1 раз. - поражение
5. Алёша показывает ножницы, Боря показывает ножницы – 1 раз. – поражение
Результат:
Боря мог выиграть 9 раз.
Алёша мог выиграть 7 раз.
3)
Камнев – К, Ножницын – Н, Бумагин - Б
1. Перевезти баулы К
2. Перевезти каждый баул Н по очереди с Н в лодке, баулы оставить, Н вернуть.
3. Перевезти каждый баул Б по очереди с Б в лодке, баулы оставить, Б вернуть.
4. Перевезти Б, Н и К
4)Для каждой гирьки есть 3 возможных расположения: чаша с грузом (-1), противоположная чаша (1) или вообще не ставить (0). Расположение каждого груза можно выбирать независимо, поэтому если есть n грузов, то их можно разместить Исходя, из этого 3^2<10<3^3, 2 гирьки - как минимум 1 значение останется без решения, 3 гирьки - как минимум 1 будет иметь несколько решений. Оптимальным набором гирек является тот, который содержит в себе степени какого либо числа: Степени двойки не подходят потому как не используют обе части весов; Тройки же подходят, поскольку гири располагаются на разных чашах весов, то их вес относительно взвешиваемого груза может принимать и положительное, и отрицательное значение.
Если, к примеру, нужна гиря весом в 2 единицы, то нужно на чашу весов с грузом положить гирю с весом 1, а на противоположную с весом 3. Вес 1 вычитается из 3 и результат 2. Таким образом можно взвесить любую массу от 1 до 10.
Возьмем 3 гирьки массой: 1, 3, 9 (степени тройки)
Цифра со знаком «-» будет соответствовать гирьке на другой чашке весов.
Уравновешивания всех масс от 1 до 10:
1 = 1.
2 = 3 - 1,
3 = 3,
4 = 3 + 1,
5 = 3 + 3 - 1,
6 = 3 + 3,
7 = 9 - 1 - 1,
8 = 9 - 1,
9 = 9,
10 = 9 + 1
5)Допустим, минимальное количество шагов получится если постоянно удваивать максимальное значение:
1) Х+Х=2Х 2) 2Х+2Х=4Х 3) 4Х+4Х=8Х(8X+8X>15X) 4)8Х+4Х=12Х 5)12Х+2Х=14Х 6)14Х+Х=15Х – 6 шагов
Иначе, получить максимальное кратное число (неравное 15): 1, 3, 5 – максимальное 5.
Что бы его получить нужно сделать как минимум 3 операции:
1) Х+Х=2Х 2) 2Х+2Х=4Х 3) 4Х+Х=5Х
Или
1) Х+Х=2Х 2) 2Х+Х=3Х 3) 3Х+2Х=5Х
Теперь, нужно сделать (15/5)-1 операций для получения самого числа
4) 5Х+5Х=10Х 5) 10Х+5Х=15Х
ответ(5 шагов):
1) Х + Х = 2Х
2) 2Х + Х = 3Х
3) 3Х + 2Х = 5Х
4) 5Х + 5Х = 10Х
5) 10Х + 5Х = 15Х