В PascalABC.NET эта задача решается легко и быстро. В других версиях будет монстрик.
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017 // Внимание! Если программа не работает, обновите версию!
procedure MakeFile(path:string); // не относится к заданию, создает файл Text со 100 числами begin WriteLines(path,SeqRandom(100,-99,99).Select(x->x.ToString)) end;
begin MakeFile('MyFile1.txt'); // теперь у нас есть текстовый файл из 100 случайных чисел // собственно, решение var n:=ReadInteger('Укажите количество чисел:'); var a:=ReadLines('MyFile1.txt').Take(n).ToArray; Writeln('Исходная последовательность'); a.Println; Writeln('Результирующая последовательность'); a:=a.OrderBy(x->x.Last).ToArray; a.Println; WriteAllLines('MyFile2.txt',a); end.
1. Не знаю. Вопрос точно правильно написан? 2. в.пиксель 3. а.красный, синий, зеленый 4. а.хранения информации о цвете каждого пикселя экрана монитора 5. г.программа для создания и редактирования рисунков 6. б.графических примитивов 7.б. растровой графики 8. а.электронное устройство для хранения двоичного кода изображения, выводимого на экран 9. а.дисплейный процессор и видеопамять(немного есть сомнения) 10. в. bmp 11.Разрешающая сканера 300 dpi (dot per inch - точек на дюйм) означает, что на отрезке длиной 1 дюйм сканер различить 300 точек. Переведем разрешающую сканера из точек на дюйм (1 дюйм = 2,54 см) в точки на сантиметр: 300dpi : 2,54 ≈ 118 точек/см. Следовательно, размер изображения в точках составит 25*118 и 30*118 = 2950х3540 Общее количество точек изображения равно: 2950 * 3540 = 10 443 000. Информационный объем файла равен: 3 байта= 24 бита. 24 * 10 443 000 = 250632000 бит = 31329000 байт = 30595 Кб ≈ 30 Мб 12.65536 означает, что на каждый пиксель отводится два байта. Итого имеем 1280*2КБ=2,5МБ.
const
n=10;
var
arr; array[1.. 100] of integer;
i: integer;
begin
for i:=1 to n do
begin
read(arr[i]);
if arr [i]<0 then
arr[i]:=0
end;
for i:=1 to n do write (arr[i], ' ') ;
end.
2
const N = 15;
var
arr: array[1..N] of integer;
i, k: byte;
begin
randomize;
for i:=1 to N do begin
arr[i] := random(100) - 50;
write(arr[i]:4);
end;
writeln;
write('Введите k <= ', N, ': ');
readln(k);
if k > N then exit;
for i:=1 to k do arr[i] := -1 * arr[i];
for i:=1 to N do
write(arr[i]:4);
writeln;
end.