Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 14.12.2011, 18:08
nassvora nassvora вне форума
Прохожий
 
Регистрация: 14.12.2011
Сообщения: 4
Репутация: 10
По умолчанию В чем ошибка, извините..?

Код:
[Error] Project1.dpr(25): Operator not applicable to this operand type

Код:
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
var
 cityname: array [0..1120] of string;
 //cityindex: array [0..1120] of Integer;
 f:Text;
 s:string;
 i:Integer;
begin
    { TODO -oUser -cConsole Main : Insert code here }
 Assign(f,'cities.txt');
 Reset(f);
 
 for i:=0 to 1120 do
   Readln(f,cityname[i]);
 
 s:='go';
 while s <> 'exit' do
 begin
   Readln(s);
   if s in cityname then
   begin
     Writeln(s);
   end
   else
   begin
      Writeln('There is no such city! Try again.');
      Readln(s);
   end;
 
 
 end;
 
 Close(f);
 Readln(s);
end.
Ответить с цитированием
  #2  
Старый 14.12.2011, 18:19
freedomman freedomman вне форума
Новичок
 
Регистрация: 12.10.2011
Сообщения: 51
Репутация: 10
По умолчанию

if s in cityname then ??? тут что то не так
если ты хочешь сравнивать s с элементами массива то
if s=cityname[i]
Ответить с цитированием
  #3  
Старый 14.12.2011, 18:20
nassvora nassvora вне форума
Прохожий
 
Регистрация: 14.12.2011
Сообщения: 4
Репутация: 10
По умолчанию

знаю ГДЕ не знаю ЧТО
Ответить с цитированием
  #4  
Старый 14.12.2011, 18:29
freedomman freedomman вне форума
Новичок
 
Регистрация: 12.10.2011
Сообщения: 51
Репутация: 10
По умолчанию

Код:
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
var
 cityname: array [0..1120] of string;
 //cityindex: array [0..1120] of Integer;
 f:Text;
 s:string;
 i:Integer;
begin
    { TODO -oUser -cConsole Main : Insert code here }
 Assign(f,'cities.txt');
 Reset(f);
 
 for i:=0 to 1120 do
   Readln(f,cityname[i]);
 
 
 while s <> 'exit' do
 begin
   Readln(s);
for i:=0 to 1120  do
begin
   if s=cityname[i] then
   begin
     Writeln(s);
   end
   else
     Writeln('There is no such city! Try again.');
    end;
 Readln(s);
 end;
 
 end;
 
 Close(f);
 Readln(s);
end.
Ответить с цитированием
  #5  
Старый 14.12.2011, 19:00
Delirium Delirium вне форума
Прохожий
 
Регистрация: 25.11.2011
Адрес: Москва
Сообщения: 6
Версия Delphi: 2006, XE2
Репутация: 10
По умолчанию

nassvora, я бы не советовал использовать код который привел freedomman..
Я так полагаю вам необходимо определять находится ли имя города в массиве имен до тех пор пока пользователь не введет "exit"?
Ответить с цитированием
  #6  
Старый 14.12.2011, 19:10
freedomman freedomman вне форума
Новичок
 
Регистрация: 12.10.2011
Сообщения: 51
Репутация: 10
По умолчанию

Цитата:
Сообщение от Delirium
nassvora, я бы не советовал использовать код который привел freedomman..
Я так полагаю вам необходимо определять находится ли имя города в массиве имен до тех пор пока пользователь не введет "exit"?
я просто подредактировал условие проверки, а то как ему выходить из цикла ему решать
правда сообщение о не том городе выйдет 1120 раз
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:30.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025