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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2008, 19:17   #1
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию немного переделать (Делфи7)

Приветствую) Вот есть программка, работает исправно) Так её надо упростить... а именно убрать функции, и было бы замечательно если ввод/вывод файловый сделать)
Я сам с процедурами еще не занимался "это мы не проходили, это нам не задавали"... *а стыдно*... а ввод с выводом не получается, предполагаю, что из-за не знании функций.
Товарищи)не могли бы помочь в убирании функции?)

Код:

Program p;

const MAX = 10;
type mas = array[1..MAX] of integer;

procedure arinput(const n:byte; var A:mas);
var i:byte;
begin
    for i := 1 to n do
		read(A[i]);
end;

function isnegative(const n:byte; var A:mas; var i:byte):boolean;
var flag:boolean;
begin
	i := n;
	flag := true;
	while(flag and (i >= 1)) do
	begin
		if(A[i] < 0) then
			flag := false;
		i := i - 1;
	end;
	isnegative := flag;
end;

function findfkrat(const n:byte; var A:mas; var k,mmax:integer; var i:byte):boolean;
var flag:boolean;
begin
	flag := false;
	i := i + 1;
	while(not flag and (i >= 1)) do
	begin
		if((A[i] mod k) = 0) then
		begin
			flag := true;
			mmax := A[i];
		end;
		i := i - 1;
	end;
	findfkrat := flag;
end;

procedure findmax(const n:byte; var A:mas; var k,mmax:integer; var i:byte);
var p:byte;
begin
	for p := i downto n do
		if(((A[p] mod k) = 0) and (p >= 1)) then
			mmax := A[p];
end;

var
	a:mas;
	i:byte;
	k1,kmax:integer;
	flag,kkrat:boolean;

BEGIN
   writeln('Please enter k1: ');
   readln(k1);
   writeln('Please enter elements of array A[', MAX, ']');
   arinput(MAX, a);
   flag := isnegative(MAX, a, i);
   if(flag) then
	   writeln('There are not negative elements, search is impossible')
   else
   begin
	   kkrat := findfkrat(MAX, a, k1, kmax, i);
	   if(kkrat) then
	   begin
	    findmax(MAX, a, k1, kmax, i);
	    writeln('Max element krat k1 is: ', kmax);
		end
	   else
		   writeln('There are not elements krat k1!');
   end;
END.
да.. вот условие задачи...
Цитата:
Задан целочисленный одномерный массив a из n элементов.
Найти значение максимального элемента среди элементов,
кратных k1 и расположенных до последнего отрицательного элемента.
Заранее спасибо)
Joxter вне форума Ответить с цитированием
Старый 27.11.2008, 22:30   #2
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

мндэ.. 38 просмотров..
Joxter вне форума Ответить с цитированием
Старый 28.11.2008, 08:49   #3
Summerrain
Пользователь
 
Аватар для Summerrain
 
Регистрация: 16.11.2008
Сообщений: 21
По умолчанию

Тебе еще надо эту прогу переделывать ???
Просто могу помочь.
Скажи если надо.
Исправленну б потом здесь напишу.
Summerrain вне форума Ответить с цитированием
Старый 28.11.2008, 23:00   #4
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

Summerrain, ДА) Было бы здорово)
Joxter вне форума Ответить с цитированием
Старый 29.11.2008, 17:11   #5
Summerrain
Пользователь
 
Аватар для Summerrain
 
Регистрация: 16.11.2008
Сообщений: 21
По умолчанию

Готово переделал
Summerrain вне форума Ответить с цитированием
Старый 29.11.2008, 21:49   #6
Summerrain
Пользователь
 
Аватар для Summerrain
 
Регистрация: 16.11.2008
Сообщений: 21
По умолчанию

И на будущее это ПАСКАЛЬ а не ДЕЛФА
Вложения
Тип файла: rar BIN.rar (3.0 Кб, 12 просмотров)
Summerrain вне форума Ответить с цитированием
Старый 30.11.2008, 13:11   #7
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

допустим, спасибо)
Joxter вне форума Ответить с цитированием
Старый 30.11.2008, 22:16   #8
Summerrain
Пользователь
 
Аватар для Summerrain
 
Регистрация: 16.11.2008
Сообщений: 21
По умолчанию

Нет проблем обращайся
Summerrain вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно передвигать окружность с ускорением/ Задачка по Делфи7 НУБ!!! Помощь студентам 4 20.05.2008 21:29
немного переделать задание braza Паскаль, Turbo Pascal, PascalABC.NET 1 09.05.2008 21:23
Отчёты в делфи7 Lexp1 БД в Delphi 30 17.01.2008 14:05
Вкладки в делфи7 Никита1984 Компоненты Delphi 3 09.12.2007 17:33