Где только находят такие задачи О_о ну вот :)
uses crt;
type auto=record
nom:string;
sht:integer;
end;
var f,g:text;
a:array[1..100] of auto;
s,s1:string;
n,k,i,j,c,p,r:integer;
x:auto;
begin
clrscr;
assign(f,'input.txt');
reset(f);
assign(g,'output.txt');
rewrite(g);
read(f,n);
readln(f,s);
readln(f,s);
k:=1;
a[k].nom:=copy(s,1,8);
delete(s,1,9);
val(s,a[k].sht,c);
for i:=2 to n do
begin
readln(f,s);
s1:=copy(s,1,8);
delete(s,1,9);
val(s,r,c);
p:=0;
j:=1;
while(j<=k) and(p=0) do
if s1=a[j].nom then
begin
p:=j;
a[p].sht:=a[p].sht+r
end
else j:=j+1;
if p=0 then
begin
k:=k+1;
a[k].nom:=s1;
a[k].sht:=r;
end;
end;
close(f);
for i:=1 to k-1 do
for j:=i+1 to k do
if a[i].sht<a[j].sht then
begin
x:=a[i];
a[i]:=a[j];
a[j]:=x;
end;
for i:=1 to k do
begin
writeln(g,a[i].nom,' ',a[i].sht);
writeln(a[i].nom,' ',a[i].sht);
end;
close(g);
end<span>.</span>
#include <iostream>
#include <cmath>
using namespace std;
void isArmstrong(const int number)
{
int origNum, num, rem, sum = 0;
origNum = number;
num = origNum;
while(num != 0) {
rem = num % 10;
sum += pow(rem, 3);
num /= 10;
}
if(sum == origNum)
cout << origNum << " is an Armstrong number.";
else
cout << origNum << " is not an Armstrong number.";
}
int main()
{
isArmstrong(153);
return 0;
}
_________________________
С проверкой https://ideone.com/keY6PS
Нарисовал таблицу: по вертикали фамилии, по горизонтали - специальности.
Начал вычеркивать: щапов куприянов - не пилоты, поэтому ставлю "-". Петров куприянов - не штурманы - тоже минусы. Щапов и сошин - не радисты- еще 2 минуса. Сигов и щапов - не синоптики - еще 2 минуса (ну вот тут конечно натяжка с сыном) . Петров и Щапов - не бортмеханики - еще 2 минуса. У щапова осталась одна клетка - штурман. Ставлю в нее крест, а остальным в колонке штурман - нули (ну можно тоже минусы) . Далее - куприянов и сигов - не синоптики - еще минусы (кстати - тут проверка натяжки по сыну в санатории) . У куприянова остается 2 клетки- радист и бортмеханик, но он - не радист, потому что занимается боксом, т. е. он - бортмеханик. ставим крест ему в бортмеханик и 0 - в клетку радист.
Сошину и сигову - нули в клетку бортмеханик. Сигов - боксер, поэтому - не радист. Минус в клетку и у него остается только клетка пилот. Нули в клетку пилот петрову и сошину. В столбце радист осталась свободная клетка только у Петрова. Стало быть - сошин - синоптик
1. Слева устройство вывода, снизу процессор.
2. Клавиатура, принтер.
3. Устройства ввода: 2,3 Вывода: 1,4
4. 1)Веб-камера 2)Проектор