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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2008, 21:45   #1
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию Поиск в одномерном массиве

Задан целочисленный одномерный массив a из n элементов.
Найти значение максимального элемента среди элементов,
кратных k1 и расположенных до последнего отрицательного элемента.

очень нужно, уже не первый день делаю, и все не то...
надо еще пару процедур вставить. ПОМОГИТЕ!)
Joxter вне форума Ответить с цитированием
Старый 09.12.2008, 21:50   #2
Sm1Le
Форумчанин
 
Аватар для Sm1Le
 
Регистрация: 31.10.2008
Сообщений: 500
По умолчанию

паскаль ??
Skype : UASm1Le.
Sm1Le вне форума Ответить с цитированием
Старый 09.12.2008, 21:57   #3
Sm1Le
Форумчанин
 
Аватар для Sm1Le
 
Регистрация: 31.10.2008
Сообщений: 500
По умолчанию

Код:
N:=20;
otr:integer;
i,y:integer;
for i:=1 to N do 
 begin
  if arr[i]<0 then 
   begin
     i:=x;
   end;
 end;
max:=arr[1];
For i:=2 to x do 
 begin
  if ((arr[i] mod k1=0) and ( arr[i]>max) ) 
   begin
    max:=arr[i];
   end;
 end;
- дооформляешь =)
Skype : UASm1Le.
Sm1Le вне форума Ответить с цитированием
Старый 09.12.2008, 22:13   #4
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

у меня примерно так, только если нет отрицательных - выводит "Поиск невозможен" (ну так и надо)... но если в массиве есть отрицательный, но нет кратных К1, он выдает максимальный элемент
Joxter вне форума Ответить с цитированием
Старый 09.12.2008, 22:14   #5
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

вот со всеми этими "нет отрицательного", "нет кратных"... у меня все в кашу превращается)
Joxter вне форума Ответить с цитированием
Старый 09.12.2008, 22:34   #6
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

никто не может побольше написать?
Joxter вне форума Ответить с цитированием
Старый 13.12.2008, 14:19   #7
Joxter
Пользователь
 
Регистрация: 07.10.2008
Сообщений: 14
По умолчанию

Тем кому понадобится, даю код
Код:
program cond2;
{$APPTYPE CONSOLE}

uses
  SysUtils;

const
max=10;

var
a: array [1.. max] of integer;
f,g: text;
n,k1,i,kmax:integer;
flag,kkrat:boolean;
begin
assignfile(f,'D:\УЧЕБА\cond2\cond2vvod.txt');
reset(f);
assignfile(g,'D:\УЧЕБА\cond2\cond2vivod.txt');
rewrite(g);
readln(f,n,k1);
for i:=1 to n do
 read(f,a[i]);
  end;}
//КОД
{i:=n;
flag:=true;
while(flag=true and (i >= 1)) do
 begin
  if(a[i] < 0) then
   flag := false;
   i:=i-1;
 end;
  if(flag=true) then
  writeln(g,'    Поиск не возможен!')
 else
  begin
    kkrat := false;
	  i:=i+1;

     while(not kkrat and (i >= 1)) do  //как только kkrat=true - цикл заканчивается
	   begin
		   if((a[i] mod k1) = 0) then
		   begin
			   kmax := a[i];
			   kkrat := true;
		   end;
		   dec(i);
	   end;

	   {if kkrat=true then  //нахождение кратного-максимального
	    begin
	      for i := i downto 1 do
		       if(((a[i] mod k1) = 0) and (a[i] > kmax)) then kmax := a[i];
           if kmax<>0 then
	          writeln(g,'     Вот, то, что тебе нужно! - ', kmax)
           else
		        writeln(g,'     Тут его нет... :`(');
  	 	end
	   else
		   writeln(g,'Тут его нет... :`(');}

{writeln(g,'Данный делитель: ',k1);
write(g,'Массив: ');
for i:=1 to n do
 write(g,' ',a[i]);
closefile(f);
closefile(g);
END.
только все {} скобки удалите
Joxter вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск в массиве данных. Cobra9100 Microsoft Office Excel 1 17.10.2008 09:35
Колличество четных элементов в одномерном массиве forsy Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 21.05.2008 15:01
Нужен совет(бинарный поиск в 2-d массиве) sergey31 Помощь студентам 2 27.04.2008 13:49
Бинарный поиск в 1мерном массиве, ошибка в программе из книги ILDAR@GIZmo Помощь студентам 4 02.12.2007 22:22
Как найти проиизведение в одномерном массиве? kitty Помощь студентам 10 30.11.2007 20:30