Технический форум

Технический форум (http://www.tehnari.ru/)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/f43/)
-   -   Обработка и преобразование числовых последовательностей (http://www.tehnari.ru/f43/t95140/)

Rustam2503 12.03.2014 02:12

Обработка и преобразование числовых последовательностей
 
Даны действительные числа a1,…,an. Определить второй по величине элемент,
предполагая, что все элементы различны

Debianer 12.03.2014 10:08

Язык, хотя бы, какой? И еще... Я давал решение с описанием принципа на Дельфи, только поиск максимального элемента. Адаптировать к поиску второго по величине - 30 секунд

Vladimir_S 12.03.2014 10:48

Цитата:

Сообщение от Debianer (Сообщение 1014482)
Адаптировать к поиску второго по величине - 30 секунд

Слишком долго. 10 секунд вполне хватит.
Цитата:

Сообщение от Rustam2503 (Сообщение 1014458)
Даны действительные числа a1,…,an. Определить второй по величине элемент, предполагая, что все элементы различны

И Вам, сударь, также здравствовать! По Вашему запросу сообщаю, что запись в подготовительные группы детского сада, где решают подобные задачки, производится по месту жительства.

Rustam2503 12.03.2014 11:36

Цитата:

Сообщение от Debianer (Сообщение 1014482)
Язык, хотя бы, какой?

На языке паскаля

Rustam2503 12.03.2014 11:38

Цитата:

Сообщение от Vladimir_S (Сообщение 1014497)
По Вашему запросу сообщаю, что запись в подготовительные группы детского сада, где решают подобные задачки, производится по месту жительства.

Грубить не обязательно. Если не знаешь, то писать не обязательно

Vladimir_S 12.03.2014 12:18

Цитата:

Сообщение от Rustam2503 (Сообщение 1014508)
Грубить не обязательно.

Да-да, уважаемый Рустам, простите великодушно, что поздоровался! Впредь не повторится. И как это я забыл, что мы тут все Вам по гроб жизни обязаны, а потому ожидать всяких там "здравствуйте", да "пожалуйста", да "помогите" нам не пристало! Задание дано, наше дело - каблуками прищелкнуть да выполнять.
Цитата:

Сообщение от Rustam2503 (Сообщение 1014508)
Если не знаешь, то писать не обязательно

Рустам, Вы меня, убогого, уж пожалуйста извините - но я не слишком Вас обеспокою, выложив решение задачки? Ну что ж делать - знаю...
Код:

Const
 N=20;

Var
 A:Array[1..N] of Real;
 i,j,Imax:Byte;
 b:boolean;
 Max,Max1,Min:Real;

Begin
 For i:=1 to N do
  begin
  repeat
    b:=true;
    write('A[',i:2,']= ');
    readln(A[i]);
    for j:=1 to i-1 do
    if A[i]=A[j] then b:=false;
    if Not(b) then writeln('Incorrect value!');
  until b;
  end;
 Max:=A[1];
 Imax:=1;
 Min:=A[1];
 for i:=2 to N do
  begin
  if A[i]>Max then
    begin
    Max:=A[i];
    Imax:=i;
    end;
  if A[i]<Min then Min:=A[i];
  end;
 Max1:=Min;
 for i:=1 to N do
  if (A[i]>Max1) and (i<>Imax) then Max1:=A[i];
 Writeln('Maximal element is ',Max:0:3);
 Writeln('Second value element is ',Max1:0:3);
 Readln
End.



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

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.