Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 15.04.2012, 17:21   #1 (permalink)
Dextel
Новичок
 
Регистрация: 19.12.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Помогите сделать!
Написать данную задачу в виде подпрограммы.
Дан одномерный массив X(N) .Найти наибольший элемент (MAX), Преобразовать исходный массив таким образом ,чтобы все элементы по модулю не равные (MAX) заменились нулями,остальные единицами.

pascal!!!!
Dextel вне форума   Ответить с цитированием

Старый 15.04.2012, 17:21
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Не стоит напрасно тратить время, лучше посмотрите аналогичные темы

Как преобразовать BMP в doc?
элемент декора
Что за элемент?
Не понимаю как, в Паскале найти второй нечетный элемент двумерного массива
Приобрести элемент Пельтье

Старый 15.04.2012, 17:46   #2 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

ну вот как-то так! только я не пойму почему нельзя сделать самому?
Код:
const
n=10;
var
x:array [1..n] of integer;
max,i:integer;
begin
randomize;
for i:=1 to n do begin
x[i]:=random(15);
if x[i]>max then max:=x[i];
write(x[i],' ');
end;
writeln;
writeln('max=',max);
for i:=1 to n do begin
if abs(x[i])=max then x[i]:=1 else x[i]:=0;
write(x[i],' ');
end;
readln
end.
shrek=) вне форума   Ответить с цитированием
Старый 15.04.2012, 18:10   #3 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Миша, не стОит усилий. Эту задачку господин Dextel выкладывал еще месяц назад, и тогда же были указаны ошибки в выложенном коде и предложено решение:
http://www.tehnari.ru/f43/t70465/
Однако вышеуказанный господин очевидно так занят распихиванием своих заданий по форумам, что недосуг ему ответы смотреть. Так что зря старался - как и я.
Vladimir_S вне форума   Ответить с цитированием
Старый 15.04.2012, 23:36   #4 (permalink)
Dextel
Новичок
 
Регистрация: 19.12.2011
Сообщений: 6
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Вообще-то, если вы заметили, то это совершенно разные задания в первом нужно было решить задачу, а во втором написать по задаче подпрограмму.
К тому же сам я могу написать это, но почему-то при проверке всё время ставят минус и говорят, что всё выполнено не верно.
Вот мой пример,который оказался не верным.
uses crt;
const
n=100;
var
a: array[1..n] of integer;
max,i,s: integer;
begin
max:=-32768;
write('Введите кол-во элементов массива (не больше 100): ');
repeat
read(s);
until s in [1..100];

for i:=1 to s do begin
write('a[',i,'] = ');
read(a[i]);
if a[i]>max then max:=a[i];
end;

writeln;
for i:=1 to s do begin
if abs(a[i])<>max then a[i]:=0
else a[i]:=1;
write(a[i]);
end;
end.
Dextel вне форума   Ответить с цитированием
Старый 16.04.2012, 10:04   #5 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Dextel Посмотреть сообщение
Вообще-то, если вы заметили, то это совершенно разные задания в первом нужно было решить задачу, а во втором написать по задаче подпрограмму.
Нет, не заметил. Потому что никакой принципиальной разницы между программой и подпрограммой нет - только оформление. А помочь Вам ни я, ни Shrek не можем по одной простой причине: задание неконкретно. Что значит "написать подпрограмму"? Какие из параметров считать локальными, а какие - глобальными? В конце концов, ну напишите сверху
Procedure Dirty_pig; (без параметров),
а снизу вместо точки после завершающего end поставьте точку с запятой - вот и будет "подпрограмма". Не нравится? Тогда уточняйте у преподавателя требования к процедуре, например - передать массив из тела программы и т.п. А так, извините, это просто гадание на кофейной гуще.
Цитата:
Сообщение от Dextel Посмотреть сообщение
К тому же сам я могу написать это, но почему-то при проверке всё время ставят минус и говорят, что всё выполнено не верно. Вот мой пример,который оказался не верным.
А вот здесь мой Вам совет - требуйте (именно требуйте!) у преподавателя объяснений. Надо иногда за себя постоять и укоротить преподскую дурость. Потому что, заявляю со всей ответственностью - Ваша программа составлена абсолютно грамотно, безупречно, поставленную задачу решает - так что же именно там "всё неверно"? Единственная мелочь - при выводе нового массива лучше пробелы втыкать, чтобы числа не сливались, хотя, учитывая, что там только нули и единицы, - и это не обязательно.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 23:50.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.