var a,n,i,j,s:integer; begin writeln('Введите количество цифр в числе'); readln(n); for i:=1 to n do begin writeln('Введите ',i,' цифру из ',n); readln(a); for j:=1 to n-i do a:=a*10; s:=s+a; end; writeln('Натуральное число: ',s); end.
Тестовое решение
Введите количество цифр в числе 5 Введите 1 цифру из 5 9 Введите 2 цифру из 5 2 Введите 3 цифру из 5 7 Введите 4 цифру из 5 3 Введите 5 цифру из 5 1 Натуральное число: 92731
Решение №2 Если очень надо использовать массив (хотя на мой взгляд совсем не нужно)
//PascalABC.NET (версия 3.1, сборка 1198) var a,n,i,j,s:integer; mas:array[1..10]of integer; begin writeln('Введите количество цифр в числе'); readln(n); for i:=1 to n do begin writeln('Введите ',i,' цифру из ',n); readln(mas[i]); a:=mas[i]; for j:=1 to n-i do a:=a*10; s:=s+a; end; writeln('Натуральное число: ',s); end.
Тестовое решение
Введите количество цифр в числе 5 Введите 1 цифру из 5 5 Введите 2 цифру из 5 4 Введите 3 цифру из 5 3 Введите 4 цифру из 5 2 Введите 5 цифру из 5 2 Натуральное число: 54322
// PascalABC.NET 3.2, сборка 1427 от 24.04.2017 // Внимание! Если программа не работает, обновите версию!
function Pow(x,y:BigInteger):BigInteger; begin Result:=x; for var i:=int64(2) to int64(y) do Result*=x end;
begin var x,y:integer; Write('Введите натуральные х и у: '); Read(x,y); if (x<=0) or (y<=0) then begin Writeln('Неверный ввод'); Exit end; if x=1 then Writeln('Результат: ',y+1) else begin var x1:=Range(2,x).Aggregate(BigInteger(1),(a,b)->a*b); Writeln('Результат ',Pow(x,y)+Pow(y,x1)) end end.
Пример Введите натуральные х и у: 5 8 Результат 2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703032325601
Для корректной работы программы диапазоны не должны пересекаться, то есть, должно быть так: X1 ≤ X2 < Y1 ≤ Y2 < Z1 ≤ Z2
Var X1,X2,Y1,Y2,Z1,Z2,G:byte; Begin Write('X1 = ');ReadLn(X1); Write('X2 = ');ReadLn(X2); Write('Y1 = ');ReadLn(Y1); Write('Y2 = ');ReadLn(Y2); Write('Z1 = ');ReadLn(Z1); Write('Z2 = ');ReadLn(Z2); Write('G = ');ReadLn(G); if (X1<=G)and(G<=X2) then WriteLn('Полутяжёлый вес') else if (Y1<=G)and(G<=Y2) then WriteLn('Тяжёлый вес') else if (Z1<=G)and(G<=Z2) then WriteLn('Супертяжёлый вес') else WriteLn('Не попадает в данные весовые категории') End.
var a,n,i,j,s:integer;
begin
writeln('Введите количество цифр в числе');
readln(n);
for i:=1 to n do begin
writeln('Введите ',i,' цифру из ',n);
readln(a);
for j:=1 to n-i do a:=a*10;
s:=s+a;
end;
writeln('Натуральное число: ',s);
end.
Тестовое решение
Введите количество цифр в числе
5
Введите 1 цифру из 5
9
Введите 2 цифру из 5
2
Введите 3 цифру из 5
7
Введите 4 цифру из 5
3
Введите 5 цифру из 5
1
Натуральное число: 92731
Решение №2 Если очень надо использовать массив (хотя на мой взгляд совсем не нужно)
//PascalABC.NET (версия 3.1, сборка 1198)
var a,n,i,j,s:integer;
mas:array[1..10]of integer;
begin
writeln('Введите количество цифр в числе');
readln(n);
for i:=1 to n do begin
writeln('Введите ',i,' цифру из ',n);
readln(mas[i]);
a:=mas[i];
for j:=1 to n-i do a:=a*10;
s:=s+a;
end;
writeln('Натуральное число: ',s);
end.
Тестовое решение
Введите количество цифр в числе
5
Введите 1 цифру из 5
5
Введите 2 цифру из 5
4
Введите 3 цифру из 5
3
Введите 4 цифру из 5
2
Введите 5 цифру из 5
2
Натуральное число: 54322