Дан одномерный массив целого типа. Получить другой массив,
состоящий только из нечетных чисел исходного массива, или
сообщить, что таких чисел нет. Полученный массив вывести в порядке
убывания элементов.
KnowsUser1:
язык?
Делфи
Ответы
Ответ дал:
0
Ответ:
Язык не указан, сделаю на PascalABC.NET 3.6.3:
begin
var A := ArrRandom(10, -99, 99).Where(p -> p.IsOdd).ToArray;
if A.Length > 0 then A.OrderDescending.Println else println('None')
end.
Ой, понял
А возможно как-нибудь конвертировать код с Pascal в Delphi?
Конкретно мою версию нет, ибо она написана с использованием библиотек .NET Framwork, которые естественно не поддерживаются Delphi
О боже мой(
А возможно хоть как-то написать это задание?
Точнее, это можно переписать на дельфи, при определённой степени "нечего делать", но выйдет там далеко не 4 строчки. Потому что дельфи не может в дотнет
А насколько много там выйдет?
Можно ли как-то с вами связаться
И если бы вы могли, скажите пожалуйста стоимость всего этого
Просто пересоздайте вопрос, и укажите что вам нужен код именно на дельфи или на Borland Pascal, насколько знаю, они совместимы. Потому что дельфи, по сути, "альтернативная ветвь эволюции" того самого классического паскаля
Ответ дал:
1
Delphi
Ответ:
- var
- a1, a2: array of integer;
- n, c, i: integer;
- procedure PrintDescending(a: array of integer);
- var i, j, max: integer;
- begin
- for i := 0 to Length(a) - 1 do
- begin
- for j := 0 to Length(a) - 1 do
- if a[j] > a[max] then max := j;
- Write(a[max], ' ');
- a[max] := -10001;
- end;
- end;
- begin
- //Запрашиваем ввод длины массива:
- Write('Введите длину массива: ');
- Read(n);
- //Устанавливаем длину массивов:
- SetLength(a1, n);
- SetLength(a2, n);
- //Заполняем первый массив случайными числами:
- for i := 0 to n - 1 do
- a1[i] := Random(201) - 100;
- //Заполняем второй массив только нечётными элементами первого:
- for i := 0 to n - 1 do
- if Abs(a1[i]) mod 2 = 1 then
- begin
- a2[c] := a1[i];
- c := c + 1;
- end;
- //Урезаем второй массив:
- SetLength(a2, c);
- //Выводим первый массив:
- for i := 0 to n - 1 do
- Write(a1[i], ' ');
- Writeln;
- //Выводим второй массив в порядке убывания:
- if c = 0 then Write('Нечётных элементов нет.')
- else PrintDescending(a2);
- end.
Пример работы:
Приложения:
Вас заинтересует
2 года назад
2 года назад
2 года назад
2 года назад
7 лет назад