  | 
	
		
	
	
		Слияние массивов и упорядочивание - Вопросы и ответы, обсуждения - Ваши вопросы по Pascal/Delphi только в данном разделе | 
	 
	 
	
	
	
	
	
	
	
	
	
	
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            19.12.2010, 15:27
            
            
         | 
        
             
            #1
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 30.07.2010  
                
                
                
                 Сообщений: 13
                   
 Популярность: 12  
                  
	 Сказал(а) спасибо: 8  
	
		
			Поблагодарили 1 раз в 1 сообщении
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Слияние массивов и упорядочивание
             
             
            
        
        
        
            
               
    Совсем недавно начали в инсте изучать делфи, вот задали такую задачку.. 
Вобщем надо обьеденить два массива, получить третий массив, который упорядочить по возрастанию, и определить новое количество элементов в массиве.
 
Надо сделать по этой задаче алгоритм блок-схему, ее вроде кое-как сделал, а вот как реализовать в делфи, не знаю   
Кому несложно, помогите начинающему программисту    , пасибку не пожалею
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            19.12.2010, 16:11
            
            
         | 
        
             
            #2
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 25.12.2009  
                
                
                
                 Сообщений: 29
                   
 Популярность: 145  
                  
	 Сказал(а) спасибо: 4  
	
		
			
				Поблагодарили 34 раз(а) в 20 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Слияние массивов и упорядочивание
             
             
            
        
        
        
            
               
    
	Код: 
	const SizeF:integer=5;
SizeS:integer=5;
SizeT:integer=10;
var
FirstArr:array [1..SizeF] of integer;
SecondArr:array[1..SizeS] of integer;
ThdArr:array[1..SizeT] of integer;
i,j,min,count:integer;
begin
j:=1;
count:=0;
for i:= 1 to SizeF do
begin
writeln('Введите FirstArr[',i,'] элемент: ');
readln(  FirstArr[i]);
end;
for i:= 1 to SizeS do
begin
writeln('Введите SecondArr[',i,'] элемент: ');
readln(  SecondArr[i]);
end;
for i:= 1 to SizeT do
begin
if (i<=SizeF) then  begin
 ThdArr[i]:=FirstArr[i] ;
 inc(count);
 end
 else
 begin
 ThdArr[i]:=SecondArr[j];
 inc(count);
 inc(j);
 end;
 end;
 
for i:=2 to SizeT do
for j:=SizeT downto i do
if ThdArr[j-1]>ThdArr[j] then
begin
min:=ThdArr[j-1];
ThdArr[j-1]:=ThdArr[j];
ThdArr[j]:=min;
end;
        
for i:= 1 to SizeT do
writeln( ThdArr[i]);
writeln('Общее количество элементов:',count);
end.
 
     
         
        
        
        
        
        
        
        
        
            
                 
                
                    
                        Последний раз редактировалось Fiery Dragon; 19.12.2010 в 16:18.
                    
                    
                
             
        
        
      | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
	
		
			| 
				
					Пользователь сказал cпасибо:
				
				
				
			 | 
			 | 
		 
	 
  
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            19.12.2010, 16:54
            
            
         | 
        
             
            #3
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 25.12.2009  
                
                
                
                 Сообщений: 29
                   
 Популярность: 145  
                  
	 Сказал(а) спасибо: 4  
	
		
			
				Поблагодарили 34 раз(а) в 20 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Слияние массивов и упорядочивание
             
             
            
        
        
        
            
               
    
	Код: 
	var
FirstArr:array [1..5] of integer;
SecondArr:array[1..5] of integer;
ThdArr:array[1..10] of integer;
i,j,min,count,SizeF,SizeS,SizeT:integer;
begin
j:=1;
count:=0;
SizeF:=5;
SizeS:=5;
SizeT:=10;
for i:= 1 to SizeF do
begin
writeln('Введите FirstArr[',i,'] элемент: ');
readln(  FirstArr[i]);
end;
for i:= 1 to SizeS do
begin
writeln('Введите SecondArr[',i,'] элемент: ');
readln(  SecondArr[i]);
end;
for i:= 1 to SizeT do
begin
if (i<=SizeF) then  begin
 ThdArr[i]:=FirstArr[i] ;
 inc(count);
 end
 else
 begin
 ThdArr[i]:=SecondArr[j];
 inc(count);
 inc(j);
 end;
 end;
for i:=2 to SizeT do
for j:=SizeT downto i do
if ThdArr[j-1]>ThdArr[j] then
begin
min:=ThdArr[j-1];
ThdArr[j-1]:=ThdArr[j];
ThdArr[j]:=min;
end;
writeln(' ');
for i:= 1 to SizeT do
writeln( ThdArr[i]);
writeln('Общее количество элементов:',count);
readln(i);
end.
 попробуй так...константы дельфи чего-то не видет,а в pascal abc запустилось =\
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
	
		
			| 
				
					Пользователь сказал cпасибо:
				
				
				
			 | 
			 | 
		 
	 
  
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            21.12.2010, 11:09
            
            
         | 
        
             
            #4
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 25.12.2009  
                
                
                
                 Сообщений: 29
                   
 Популярность: 145  
                  
	 Сказал(а) спасибо: 4  
	
		
			
				Поблагодарили 34 раз(а) в 20 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Слияние массивов и упорядочивание
             
             
            
        
        
        
            
               
    Для рандома пишешь в самом начале где-нить  
а в цикле пишешь
 
	Код: 
	for i:= 1 to SizeF do
begin
a:=random(50);
FirstArr[i]=a;
end; 
 а для поиска надо массив через двойной цикл прогнать и искать на совпадение соседних элементов,если совпадение удалять
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
	
	
		
	
	
    
        
            
             
            21.12.2010, 14:53
            
            
         | 
        
             
            #5
            
         | 
    
 
    
    
  
    | 
    
     | 
     
  
    | 
    
     | 
    
    
     | 
   
  
    
        Разведчик  
     | 
     
 
    
      
  
            
    
      
    
            
                 Регистрация: 25.12.2009  
                
                
                
                 Сообщений: 29
                   
 Популярность: 145  
                  
	 Сказал(а) спасибо: 4  
	
		
			
				Поблагодарили 34 раз(а) в 20 сообщениях
			
		
	 
     
 
             
                
               
                
       
                  
     | 
    
    
    
        
        
            
            
                 
                Re: Слияние массивов и упорядочивание
             
             
            
        
        
        
            
               
    
	Код: 
	var
FirstArr:array [1..5] of integer;
SecondArr:array[1..5] of integer;
ThdArr:array[1..10] of integer;
tempArr:array [1..10] of integer;
i,j,z,min,count,SizeF,SizeS,SizeT,rand:integer;
temp:boolean;
begin
j:=1;
count:=0;
SizeF:=5;
SizeS:=5;
SizeT:=10;
randomize;
for i:= 1 to SizeF do
begin
rand:=random(10);
FirstArr[i]:=rand ;
end;
for i:= 1 to SizeS do
begin
rand:=random(10);
SecondArr[i]:=rand;
end;
for i:= 1 to SizeT do
begin
if (i<=SizeF) then  begin
 ThdArr[i]:=FirstArr[i] ;
 inc(count);
 end
 else
 begin
 ThdArr[i]:=SecondArr[j];
 inc(count);
 inc(j);
 end;
 end;
for i:=2 to SizeT do
for j:=SizeT downto i do
if ThdArr[j-1]>ThdArr[j] then
begin
min:=ThdArr[j-1];
ThdArr[j-1]:=ThdArr[j];
ThdArr[j]:=min;
end;
writeln(' ');
 count:=0;
 z:=1;
writeln('Massiv do proverki na povtorbI:');
for I := 1 to SizeT  do
writeln(ThdArr[i]);
writeln(' ');
   For i := 1 to SizeT do
     Begin
        temp := false;
          For j := 1 to 10 do
            begin
            if (i=j) then  continue
            else  begin
              If ThdArr[i] = ThdArr[j] then   
                  begin
                           temp := true;
                           break;
                  end;
            end;
                
           end;
        if temp <> true then
          begin
            tempArr[z]:= ThdArr[i];
            inc(z);
          end;
     End;
writeln('massiv bez povtor element:');
for I := 1 to z-1 do
writeln(tempArr[i]);
writeln('Vcego elementov v novom massive: ',z-1);
     
readln(i);
end.
 фуф,написал)
     
          
        
        
        
        
        
        
        
     | 
 
    | 
        
        
        
        
         
     | 
    
    
    
        
        
        
        
             
        
        
        
        
        
        
        
            
        
        
        
     | 
 
 
 
  
	 
	
		 
	 
 
 
	
		
	
	
	
	
	
		
	
		 
		Ваши права в разделе
	 | 
 
	
		
		Вы не можете создавать новые темы 
		Вы не можете отвечать в темах 
		Вы не можете прикреплять вложения 
		Вы не можете редактировать свои сообщения 
		 
		
		
		
		
		HTML код Выкл. 
		 
		
	  | 
 
 
	 | 
	
		
	 | 
 
 
	
		
			 
			Похожие темы
		 | 
	 
	| Тема | 
	Автор | 
	Раздел | 
	Ответов | 
	Последнее сообщение | 
 
	| 
		
		[Обсуждение] Прокачивание
	 | 
	К0ТЁН0К | 
	Общение и обсуждение, архив Point Blank | 
	22 | 
	21.04.2010 19:12 | 
 
 
 
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 03:51. 
		 
	 
 
 | 
  |