Показать сообщение отдельно
Старый 29.08.2012, 15:19   #5
PassCall
Разработчик
 
Аватар для PassCall
 
Регистрация: 07.04.2011
Адрес: Млечный путь, Земля, Европа, Беларусь, Могилев
Сообщений: 391
Написано 94 полезных сообщений
(для 319 пользователей)
Ответ: Маленикая программа

эмм..

1) Я так понял, программа ищет в массиве слова, совпадающие с введенным в форму. Но если ввести слово, ни с чем не совпадающее, все равно будет возвращено значение slovo2[0]

2) i=0 можно и не писать.

3) Форматирование кода - полезный друг.

Вот более или менее правильный код

Program example;
var

itemId,i,id : integer;
cmdNext, cmdQuit: command;
name : string;
slovo1:array [0..1] of string;
slovo2:array [0..1] of string;

procedure loading;
begin
    i
:=0;
    
slovo1[i]:='Привет'; slovo2[i]:='Hello'; i:=i+1;
end;

begin
    id
:=-1;
    
loading;
    
    
ShowForm;
    
itemId := FormAddTextField('Введите слово', '', 20, TF_ANY);
    
cmdNext := CreateCommand('ОК', CM_OK, 1);
    
AddCommand(cmdNext);

    
repeat until (GetClickedCommand = cmdNext);

    
name := FormGetText(itemId);

    for 
i:=0 to 1 do
    if 
slovo1[i]=name then
    begin 
        id
:=i;
        break;
    
end;

    
ShowCanvas;

    if 
id<>-1 then DrawText(slovo2[id], 0, 0); else DrawText('Слово не найдено', 0, 0);
    
Repaint;

    
cmdQuit := CreateCommand('Выход', CM_EXIT, 1);
    
AddCommand(cmdQuit);
    
repeat until (GetClickedCommand = cmdQuit);
end. 
__________________
Мечта программиста: запрограммировать процесс программирования.

Всё гениальное - просто.

http://passcall.ucoz.com
(Offline)
 
Ответить с цитированием