C++.дана матрица с(6,6). определить количество "особых" элементов массива, считая элемент "особым", если он больше суммы остальных элементов своего столбца. напечатать индексы "особых" элементов.
1) var i,a:Integer; begin a:= 1; while a<>0 do begin Read(a); i+=a; end; WriteLn(i=10); end.
2) Можно через double. Но после 170! уже бесконечность. var n:Integer; var b:double; begin b:=1; Read(n); for var i:= 1 to n do b*=i; WriteLn('factorial '+n+' = '+b); end.
3) Работает как и с числами так и со строками. var arr:array of char; var a:String; var first,last:Integer; begin Read(a); arr:= a.ToCharArray(); for var i:= 0 to arr.Length-1 do begin first:=Pos(arr[i], a); last:=Pos(arr[i], a,first+1); if (first>0) and (last > 0) and (first<>last) then begin first:=99; break; end; end; if first = 99 then WriteLn('Содержит. Это число '+arr[last-1]) else WriteLn('Несодержит.'); end.
begin if ReadInteger('Введите число:').ToString.GroupBy(t->t). Select(t->(t.Key,t.Count)).Any(t->t[1]>1) then Writeln('Число содержит по крайней мере две одинаковые цифры') else Writeln('Введенное число не содержит одинаковых цифр') end.
Примеры Введите число: 12345670 Введенное число не содержит одинаковых цифр
Введите число: 1320624 Число содержит по крайней мере две одинаковые цифры
#include <cstdlib>
#include <iomanip>
using namespace std;
int const n=6;
int const m=6;
int main() {
int a[n][m];
int sm;
// установка генератора случайных чисел
srand(time(NULL));
// генерация массива и вывод на экран
for (int i=0; i<n; i++) {
for (int j=0; j<m; j++) {
a[i][j]=rand()%50-20;
cout<<setw(7)<<a[i][j];
}
cout<<endl;
}
// обработка массива
for (int i=0; i<m; i++) {
sm=0;
for (int j=0; j<n; j++) sm+=a[j][i];
for (int j=0; j<n; j++)
if (2*a[j][i]>sm) cout<<j+1<<" "<<i+1<<endl;
}
system("pause");
return 0;
}
-16 -2 15 4 7 3
-13 16 3 16 -13 3
0 19 20 6 20 -18
-19 7 1 10 -11 25
5 4 3 21 28 -13
26 -19 -7 12 -20 11
1 1
2 1
3 1
5 1
6 1
3 5
5 5
4 6