Предмет: Информатика,
автор: nurr322
Задание на паскале
Дан численный массив M, элементы которых упорядочены по возрастанию и число a. Не нарушая порядок возрастания элементов включить число a в массив M.
Ответы
Автор ответа:
0
const n=11;
var b:array[1..n] of integer;
i,j,c,a:integer;
begin
randomize;
for i:=1 to n-1 do begin
b[i]:=random(50);
write(b[i]:3);
end;
writeln;
for i:=1 to n-2 do
for j:=n-2 downto i do
if b[j]>b[j+1] then begin
c:=b[j];
b[j]:=b[j+1];
b[j+1]:=c;
end;
writeln;
writeln('Введите число а');
read(a);
writeln('a= ',a);
b[n]:=a;
for i:=1 to n do
write(b[i]:3);
end.
LordStatski:
Да... мне еще учиться и учиться. Забавно то, что моя программа не воспринимает ваше решение, хотя версия нужная стоит.
В смысле "не воспринимает"? Что пишет?
Чаще всего это проблема вставки через буфер из браузера. Тут гарантированно все работает только в браузере Mozilla FireFox. В остальных браузерах помогает копирование сначала в Блокнот, а уже оттуда в программную среду.
М, все нормально. Просто если копировать, получается, что пробел впереди мешает запуску.
Да, я уже понял.
Ну вот теперь Вы можете в оболочке просто наводить курсор на непонятные слова и будет Вам подсказка.
Так всегда и делаю. Спасибо, теперь я буду знать больше :)
А Вам действительно хочется знать больше?
Да. Я хочу учиться на программиста потом. Вот, начинаю с малого.
Тогда Вам стоит уделить внимание этой версии языка. Она - это C#, Питон и Хаскель "в одном флаконе". Отсюда и волшебная эффективность программирования.
Автор ответа:
0
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!
begin
var M:=SeqRandom(ReadInteger('n='),-99,99).Sorted.ToArray; M.Println;
var a:=ReadInteger('Введите вставляемое число:');
var i:=M.FindIndex(t->t>a);
if i>-1 then M:=M?[:i]+Arr(a)+M?[i:]
else M:=M+Arr(a);
M.Println
end.
Внимание! Если программа не работает, обновите версию!
begin
var M:=SeqRandom(ReadInteger('n='),-99,99).Sorted.ToArray; M.Println;
var a:=ReadInteger('Введите вставляемое число:');
var i:=M.FindIndex(t->t>a);
if i>-1 then M:=M?[:i]+Arr(a)+M?[i:]
else M:=M+Arr(a);
M.Println
end.
Приложения:
спасибо, можешь помочь с этим? https://znanija.com/task/29176221
Похожие вопросы
Предмет: Немецкий язык,
автор: arturganzha666
Предмет: Химия,
автор: 2008ek81
Предмет: Математика,
автор: mihartyt228
Предмет: Математика,
автор: Irauser
Предмет: География,
автор: ta2000