очень нужна Язык:Фортран
Вводится одномерный вещественный массив фиксированной длины, состоящий из «N» элементов (конкретное значение N для каждого студента индивидуально задается преподавателем). Требуется: 1) Вывести исходный массив в строку (например, 23.5 45.1 и т.д.). 2) Вывести со следующей строки сначала все положительные элементы в одну строку по вышеприведенному формату, а с другой строки все отрицательные по тому же формату.
const
nn=100;
type
mas=array[1..nn] of integer;
procedure MySwap(var a:mas; n:integer);
var
i,t:integer;
begin
for i:=1 to n div 2 do begin
t:=a[i]; a[i]:=a[n-i+1]; a[n-i+1]:=t
end
end;
procedure MyPrint(txt:string; a:mas; n:integer);
var
i:integer;
begin
Write(txt);
for i:=1 to n do Write(a[i],' ');
Writeln
end;
var
i,n:integer;
a,b:mas;
begin
ClrScr;
Write('n='); Readln(n);
ClrScr;
Randomize;
for i:=1 to n do begin
a[i]:=Random(10);
b[i]:=Random(10)
end;
MyPrint('Исходный А : ',a,n);
MySwap(a,n);
MyPrint('Результат А: ',a,n);
MyPrint('Исходный B : ',b,n);
MySwap(b,n);
MyPrint('Результат B: ',b,n);
ReadKey
end.
// PascalABC.NET 3.3, сборка 1607 от 31.12.2017
// Внимание! Если программа не работает, обновите версию!
begin
var s:=Range(100,998,2).Where(t->t mod (t div 100 + t mod 10)=0);
var i:=0;
foreach var n in s do begin
Print(n); i+=1;
if i=4 then begin i:=0; Writeln end
end;
if i<>0 then Writeln;
end.
Результат
100 102 108 110
120 126 130 132
140 150 160 162
170 180 190 192
196 198 200 204
210 212 216 220
230 232 234 240
250 252 256 260
264 270 272 280
290 292 294 296
300 306 308 330
360 364 390 396
400 402 408 420
424 432 440 460
462 464 468 480
492 500 504 506
510 520 530 532
540 550 560 570
580 590 594 598
600 630 632 636
658 660 672 690
696 700 702 704
770 792 800 804
826 840 848 864
880 896 900 902
918 990