Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ ПОЗИТИВНЫЕ ЧИСЛА

Автор: Kristina20 24.05.2006 21:12

помогите,пожалуйста!!!!!срочно надо программа до пяницы!!!!не успеваю все,тк многое не понимаю!!!!
№1
Написать массив с 10 положительными и негативными числами, которые выводят с помощью клавиатуры.
Упорядочить только положиттельные числа в порядке уменьшения!!!!!!!
№2
Написать массив с 25 элементами и заполнить случайными числами. Значение элементов находится в интервале от -20 до 20ю На экране показываются числа,у которых последняя цифра 0,1....9

ОЧЕНЬ ПРОШУ НАПИШИТЕ ПРОГРАММЫ!!!!!!!!!!!!! Я ТОНУ,СПАСАЙТЕ!!!!!!!!!!!!!!!

Автор: volvo 24.05.2006 21:24

Задача №1:
Банальный "пузырек", с добавлением двух дополнительных условий (оба сравниваемых элемента > 0)

const
n = 10;
type
arrType = array[1 .. n] of integer;

Var
arr: arrType;
i, j, T: integer;

begin
{
... ввод массива Arr с клавиатуры. Сама сделаешь ?
}
for i := 1 to n do
for j := n downto i+1 do

If ((arr[i] > 0) and (arr[j] > 0))
and
(arr[i] < arr[j]) then
begin
T := arr[i]; arr[i] := arr[j]; arr[j] := T
end;

for i := 1 to n do
write(arr[i]:4);
writeln;
end.


А вот тут:
Цитата
Написать массив с 25 элементами и заполнить случайными числами. Значение элементов находится в интервале от -20 до 20. На экране показываются числа,у которых последняя цифра 0,1....9
blink.gif blink.gif Вообще-то у ЛЮБОГО числа последняя цифра 0 .. 9

Или тебе надо для каждой цифры по отдельности?

Автор: Kristina20 24.05.2006 21:31

give_rose.gif smile.gif give_rose.gif give_rose.gif Сделаю!!!!!!!Я даже не знаю как благодарить!!!!! smile.gif smile.gif smile.gif


Я тоже это и не поняла!!!в чем здесь прикол!!!!!!получается это все числа вывезти на экран!!!!но задания я переписала правельно

Автор: volvo 24.05.2006 21:40

А может, так:

const
n = 25;
type
arrType = array[1 .. n] of integer;

var
arr: arrType;
i, j, T: integer;

begin

for i := 1 to n do
arr[i] := integer(random(41) - 20);

writeln('array:');
for i := 1 to n do
write(arr[i]:4);
writeln;

writeln('result:');
for i := 0 to 9 do begin
write('#', i, ': ');
for j := 1 to n do
if (abs(arr[j]) mod 10) = i then write(arr[j]:4);
writeln;
end;
writeln;
end.

?

Автор: Kristina20 24.05.2006 21:47

Попробую!!!!!!!завтра к лектору подойду,выясню,что он имел в виду этим вопросом!!!!!НО ВСЁ РАВНО О give_rose.gif Г give_rose.gif Р give_rose.gif О give_rose.gif М give_rose.gif Н give_rose.gif О give_rose.gif Е give_rose.gif СПССИБО!!!!!!!

Автор: Anastacia Adesso 26.05.2006 18:40

Хмм а скажите почему во второй программе вроде случайные числа стоят, а выводятся при запуске постоянно одни и те же?

Автор: volvo 26.05.2006 18:44

Randomize в начало программы добавь, и будет тебе счастье... smile.gif

Автор: Anastacia Adesso 26.05.2006 18:45

volvo Я тоже одновременно с Тобой до этого дошла. blum.gif
Спасибки