Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2010, 15:25   #1
yulya_kkkkkkk
 
Регистрация: 05.04.2010
Сообщений: 6
Восклицание программы в delphi!

1 заданиеДан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-10,60]. Удалить из него все элементы, в которых последняя цифра нечетная, а само число кратно 3.
2. Вставить элемент со значением К после всех четных элементов, начинающихся на цифру К.
3. Переставить элементы следующим образом: a[1], a[12], a[2], a[11], a[3], a[10],a[4], a[9], a[5], a[8], a[6], a[7].
2 заданиеДан двумерный массив размером n*m, заполненный случайным образом.
1. Заменить максимальный элемент каждой строки нулем
2. Вставить после каждого столбца, содержащего максимальный элемент массива, столбец из нулей.
3. Удалить все столбцы, в которых встретится нечетный положительный элемент.
4. Поменять местами первый и предпоследний столбцы.
хотя бы что то)
yulya_kkkkkkk вне форума Ответить с цитированием
Старый 05.04.2010, 15:36   #2
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

И что ты предлагаешь? Все сделать за тебя?
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 05.04.2010, 15:38   #3
yulya_kkkkkkk
 
Регистрация: 05.04.2010
Сообщений: 6
По умолчанию

нет, я просто ничего не могу понять..с массивами как делать
а сроки сдачи все близятся, а мыслей нет...
yulya_kkkkkkk вне форума Ответить с цитированием
Старый 05.04.2010, 15:41   #4
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Тогда топай в раздел "Фриланс", там помогут... за некоторую сумму денег...
Перемешивай дело с бездельем и не сойдешь с ума...
Grag вне форума Ответить с цитированием
Старый 05.04.2010, 16:17   #5
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

Лови 1
Код:
program lodyr;
const nmax=25;
var
j,i,n:integer;
a:array[1..25] of integer;
b:array[1..25] of integer;
k:byte;
begin
writeln('1) laba 1');
writeln('2) laba 2');
writeln('3) laba 3');
readln(k);
writeln('wwedite razmer massiva:');
readln(n);
randomize;
for i:=1 to n do
a[i]:=trunc(random(70))-10;
writeln('ishodniy massiv');
for i:=1 to n do
write(a[i],' ');
writeln;
case k of
1:
begin
j:=1;
for i:=1 to n do
begin
if ((a[i] mod 2)<>0) and ((a[i] mod 3)=0) then continue
else
begin
b[j]:=a[i];
j:=j+1;
end;
end;
writeln('rezultat:');
for i:=1 to j do
write(b[i],' ');
readln;
end;
end;
end.
danekne вне форума Ответить с цитированием
Старый 05.04.2010, 16:23   #6
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Код:
writeln('wwedite razmer massiva:');
readln(n);
Я ввожу, допустим, 50... Все, кирдык программе...
А это что такое?
a[i]:=trunc(random(70))-10;
Диапазон то задан от -10 до 60 и зачем тут trunc? числа то и так целые...

Зачем же так напрягаться то? (a[i] mod 2)<>0)
Уж не проще ли написать if odd(a[i])
И это ты так проверяешь нечетность последней цифры числа???

Да и Delphi здесь что-то совсем не пахнет...
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Grag; 05.04.2010 в 16:40.
Grag вне форума Ответить с цитированием
Старый 05.04.2010, 17:17   #7
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

))) С динамикой заморачиваться не хотелось. Размер массива ограничен 25.
Random(70) дает случайное число от 0 до 70. И число может быть дробным. Чтобы диапазон расширить за 0 и появляется лишняя десятка. Ну а нечетность последней цифры - признаки делимости на два вспомните. Единственное - следует еще учесть, что ноль не является ни четными ни ничетным числом
danekne вне форума Ответить с цитированием
Старый 05.04.2010, 17:25   #8
Grag
А может и не...
Участник клуба
 
Аватар для Grag
 
Регистрация: 27.03.2010
Сообщений: 1,269
По умолчанию

Цитата:
Сообщение от danekne Посмотреть сообщение
Random(70) дает случайное число от 0 до 70. И число может быть дробным.
Random(70) дает результат в диапазоне от 0 до 69 - это раз...
Функция Random(Range:word) возвращает тип результата WORD - это два... И когда же тип WORD содержал дробные значения???

Цитата:
Сообщение от danekne Посмотреть сообщение
))) С динамикой заморачиваться не хотелось.
А какие проблемы с динамикой в Delphi Да и в Паскале никаких проблем!
Перемешивай дело с бездельем и не сойдешь с ума...

Последний раз редактировалось Stilet; 06.04.2010 в 11:27.
Grag вне форума Ответить с цитированием
Старый 05.04.2010, 17:32   #9
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

Я не знал, какой тип возвращает рандом с диапазоном. Простой рандом возвращает вещественный тип
danekne вне форума Ответить с цитированием
Старый 05.04.2010, 18:36   #10
RUSt88
Участник клуба
 
Регистрация: 29.12.2009
Сообщений: 1,166
По умолчанию

Grag рулит!!! +5

ну а по теме, Юль, пиши на мыло, договоримся, сделаю в лучшем виде с комментариями и пояснениями
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть]
RUSt88 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание программы в Delphi strserega Помощь студентам 5 01.04.2010 07:08
Программы по Delphi Mary1357 Помощь студентам 1 09.02.2010 11:30