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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> задача по консоле в delphi 
:(
    Опции темы
oksancik
  Дата 24.12.2004, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Интересуют любые вариации ниже приведенного задания!Задание по консоле.

Дана последовательность целых чисел ai. Построить новую последовательность,
состоящую из тех элементов, которые больше суммы двух предыдущих.
Начинать построение новой последовательности с третьего элемента.

Вход
В каждой строке входа дано по одному элементу исходной последовательности.
Признак конца последовательности - 0.
Выход
В каждую строку выхода вывести по одному элементу результирующей
последовательности. Заключительный нуль в результат не выводить.

Пример
Код
Вход:
1
4
7
2
7
10
3
0
Выход:
7
10


Это сообщение отредактировал(а) oksancik - 24.12.2004, 18:47
PM MAIL   Вверх
Yanis
Дата 24.12.2004, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

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



Если бы мне не надо бьло на электричку выходить я бы тебе написал smile Это же не так сложно.


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
z-END
Дата 24.12.2004, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

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



Мне на электричку не надо =)
Код

program Zadacha;

{$APPTYPE CONSOLE}

uses Classes, SysUtils;
var
 InList: TStringList;
 Line: String;
 x, Item1, Item2, Item: Integer;
begin
InList := TStringList.Create;
Repeat
 ReadLn (Line);
 if Line <> '0' then InList.Add (Line);
Until Line = '0';
for x := 2 to InList.Count-1
do
 begin
  Item := StrToInt (InList[x]);
  Item1 := StrToInt (InList[x-1]);
  Item2 := StrToInt (InList[x-2]);
  if Item > Item1+Item2 then WriteLn (Item);
 end;
Readln;
FreeAndNil (InList);
end.



--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
oksancik
Дата 24.12.2004, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо. Только нельзя это по легче написать, а то я не всё понимаю и не знаю еще столько smile
Конкретно это:
Цитата
...Readln;
FreeAndNil (InList);
end...

PM MAIL   Вверх
Yanis
Дата 27.12.2004, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

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



Я приехал smile

Так тебе с файлома или с массивами надо делать?


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Bes
Дата 28.12.2004, 09:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Var
A,B:array of integer;
i:integer;
begin
setlength(b,0);
setlength(A,8);
a[0]:=1;
a[1]:=4;
a[2]:=7;
a[3]:=2;
a[4]:=7;
a[5]:=10;
a[6]:=3;
a[7]:=0;

for i:=2 to length(a)-1 do
if a[i]>a[i-1]+a[i-2] then
begin
setlength(b,length(b)+1);
b[length(b)-1]:=a[i];
end;
end;
// вывод сам напишешь?
PM MAIL   Вверх
z-END
Дата 28.12.2004, 11:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

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



Bes а если элементов больше чем 8?! и вообщето по условию (насколько я понял) числа не даны изначально, их вводит юзер, соотвтственно если через TStrings работать нельзя то наверно надо будет поступить таким образом:
Код

Var InList:Array of Integer;
...
Repeat
ReadLn (Line);
if Line <> '0' then
  begin
    SetLength (InList, Length (InList) + 1);
   InList[Length (InList) - 1]:=Line;
  end;
Until Line = '0';



Цитата(oksancik @ 24.12.2004, 20:24)
Спасибо. Только нельзя это по легче написать, а то я не всё понимаю и не знаю еще столько

можно и полегче, например так: InList.Free;



--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
Bes
Дата 28.12.2004, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



2nJIaKca.spb:
Ну ясен пень. просто написал принцип вычисления а уж ввод-вывод... по крайней мере в вопросе не спрашивалось.
А причем тут TStrings?

Мммм.... понятно. (не буду зарабатывать себе "звездочек" - отредактирую это :-) )

Это сообщение отредактировал(а) Bes - 28.12.2004, 11:54
PM MAIL   Вверх
z-END
Дата 28.12.2004, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

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



Да притом что уж очень это похоже на школьный экзамен=) а там наврядли воспримут решение через TStrings, а если говорить про принцип вычисления, то я его уже давно тут написал smile


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

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

1. Публиковать ссылки на вскрытые компоненты

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

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


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

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


 




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


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

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