Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Последовательности 
:(
    Опции темы
HacTeHka
  Дата 23.12.2008, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



Привет Ребята! К вам есть просьба.... мне помогали делать задачу код мы написали.... но потом мне сказали что я не ту задачу делала:( вот... мне надо переделать код с задачи 
Задание: Дана последовательность целых чисел, в диапазоне от –32000 до 32000, индикатор окончания – число 99999.
Составить программу с использованием процедур и/или функций.

1.    Определить, есть ли в последовательности три рядом стоящих числа, которые могут выражать длины некоторого треугольника.
Код

uses crt;
const ch = 99999;
type arr = array [1..3000] of longint;

procedure init(var i : integer; var a : arr); {ввод начальных данных}
var j : integer;
begin
  textcolor(14);
  clrscr;
  writeln('Vvedite posledovatelno chisla: ');
  i := 0;
  repeat
    inc(i);
    readln(a[i]);
  until a[i] = 99999;
  write('Nachalnaya posledovatelnost: ');
  for j := 1 to i - 1 do write(a[j], ' ');
end;

procedure check(b : boolean; xi : integer; a : arr); { процедура, которая
                                                      по переменной bool определяет что надо вывести
                                                      на экран..}
var i : integer;
begin
  writeln;
  if b then {если бул = тру, значит вывести эту найденную последовательность}
    begin
      writeln('Posledovatelnost est! Vot ona: ');
      for i := xi to xi + 2 do write(a[i], ' ');
    end
  else
    begin
      writeln('Netu');
    end;
  readln;
end;

var i, xi, n : integer;
    a : arr;
    bool : boolean;
begin
  init(n, a);
  bool := false; {изначально последовательности типа нет}
  i := 1;
  while (a[i] <> ch) and (a[i + 2] <> ch) and (a[i + 1] <> ch) and (not(bool)) do
  {до тех пор пока не дошли до числа 99999(в условие оно обрывает последовательность),
   и пока не нашли эту последовательность, мы делаем проверку}
    begin
      if (a[i + 2] < a[i] + a[i + 1]) and (a[i] < a[i + 1] + a[i + 2]) and (a[i + 1] < a[i] + a[i + 2]) then
        {вооот тут смотрим, можно ли из трех подряд идущих чисел сделать треугольник..)
         ну надеюсь каким образом это делается понятно.. Типа если сумма любых двух
         сторон всегда больше третьей стороны, значит можно)}
        begin
          bool := true; {переменная становится истинной, т.к. нашли}
          xi := i; {это координата начала последовательности длинн треуголика}
        end;
      inc(i); {увеличивается оператор цикла}
    end;
  check(bool, xi, a); {процдура проверки выше}
end.



на это 

Найти чередуются в последовательности простые числа с непростыми ... 


Помогите пожалуста! мне завтра надо сдать:(((

Это сообщение отредактировал(а) HacTeHka - 23.12.2008, 17:59
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема »


 




[ Время генерации скрипта: 0.0404 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.