2014-02-05 5 views
-3

Заданные N целых чисел, напишите алгоритм (в псевдокодовой форме), чтобы подсчитать полные пары целых чисел, которые имеют разность K. Входы Число целых чисел N, разность K и список элементы. Выход Одно целое говорить число пар, которые имеют разность К.Как искать этот массив

ответ

0

Это будет делать работу:

START 
    # Variables Initialization 
    init Decision = 'continue'; 
    init N = 0; 
    init integers_array = array(); 

    # Getting the list of Integers 
    Do{ 
     prompt "Insert an Integer"; 
     input inserted_int; 
     integers_array.push(inserted_int); 
     prompt "Choose: Done or continue?!"; 
     input Decision; 
    }while not (Decision == 'continue'); 

    # Getting the Searched Difference 
    prompt "Insert the searched difference:"; 
    input K; 

    # Preparing the search phase 
    N = count(integers_array); 
    init pairs_counter = 0; 

    # Make a double loop on the same Integers array, and increment the counter when find   
     pairs, every pair will be counted twice! 
    foreach (int i=0; i<N; i++){ 
     foreach (int j=0; j<N; j++){ 
      if (absolute(integers_array[i] - integers_array[j]) == K){ 
       pairs_counter++; 
      } 
     } 
    } 

    # Divide by two to get the real number of Pairs 
    true_pairs_counter = pairs_counter/2; 

    output true_pairs_counter; 

    END 
Смежные вопросы