19:39
Обновить
Delphi и Lazarus - Форум
| RSS



[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: LeadyTOR, aka_kludge  
Delphi и Lazarus
aka_kludgeДата: Пятница, 18.12.2009, 08:47 | Сообщение # 1
Admin
Группа: Администраторы
Сообщений: 1058
Награды: 2
Репутация: 25
Статус: Offline
Задачи были решены мной или ещё кем нить

При копировании материала прошу указывать первоисточник
 
aka_kludgeДата: Пятница, 18.12.2009, 08:48 | Сообщение # 2
Admin
Группа: Администраторы
Сообщений: 1058
Награды: 2
Репутация: 25
Статус: Offline
Написать процедуру, переворачивающие наоборот слова в предложении.

Code
program
Project15;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
   s, s1, s2, s3: String;
   i: Integer;

begin
   Readln(s);  //  Ввод предложения
   s1:= '';  //  
Отчистили переменную s1
   s2:= '';  //  Отчистили переменную s2
   s3:= '';  //  Отчистили переменную s3
   for i:= 1 to Length(s)
+ 1 do    //  Делать пока не будет конец строки + 1
     if (s[i] <>
' ') and (i <> Length(s) + 1) then  //  Если символ не равен
пробелу и i не равно длине строки + 1
   s2:= s2 + s[i]  //  Переменной
s2 присвоили очередной символ строки s
  else
  begin
      
    s3:= s3 + ' ';  //  Считаем количество пробелов после слова
     
     While Length(s2) <> 0 do  //    Пока длина ытроки не будет ровна 0
делать
        begin
       s1:= s1 + Copy(s2, Length(s2), 1);
  //  Скопировали 1 символ из конца строки s в строку s1
    
Delete(s2, Length(s2), 1);  //    Удалили последний символ строки s
          
  end;
     s2:= '';  //  Отчистили переменную s2
        
s1:= s1 + s3;  //  Добавили в конец слова пробелы
         s3:= '';
  //  Отчистили переменную s3
  end;
   Writeln(s1);  //  Вывели в
поле ввода 2 содержимое строки s1
   Readln;  //  Задержка выхода из
программы
end.
 
aka_kludgeДата: Пятница, 18.12.2009, 08:48 | Сообщение # 3
Admin
Группа: Администраторы
Сообщений: 1058
Награды: 2
Репутация: 25
Статус: Offline
Написать программу, которая считывает текст из файла и выводит на экран выражения, заключенные в кавычки.

Code
project Project1;

{$APPTYPE CONSOLE} // Тип приложения - консольное

uses SysUtils; //Используемые модули

var
   F: File of Char; //Файловая перемнная
   Ch: Char; //Прочитанный символ
   Q: Boolean; //Признак, что мы в строке в ковычках

begin
   Q := False; //Обнуляем перемнную
   AssignFile(F, \'text.txt\'); //Связываем файловую перенную с файлом
Reset(F); //Открываем файл
while not EOF(F) do //Цикл пока не конец файла
begin
   Read(F, Ch); //Читаем очередной символ
   if Ch = \'"\' then Q := not Q; //Если это ковычка, то мы
вышли/вошли в строку в ковычках
   if (Ch <> \'"\') and Q then Write(Ch); //Если мы в строке
и это не ковычка выводим символ
end;
WriteLn; //Переходим на новую строку
ReadLn; //Ждём нажатия Enter
CloseFile(F); //Закрываем файл
end.

Алгоритм приблизительно таков:
0. Обнулить флаг
1. Открыть файл
2. Если конец файла перейти на шаг 7
3. Прочитать символ
4. Если это ковычка инвертировать флаг
5. Если флаг установлен и это не ковычка вывести символ
6. Перейти на 2
7. Подождать нажатия на клавишу (чтобы окно консоли не закрылось сразу и мы смогли увидеть резальтат)
8. Закрыть файл

 
  • Страница 1 из 1
  • 1
Поиск:

Профиль
ИнформацияУправление
Сегодня: 21, 21.12.2024, 19:39
Вы используете: " v "
ВаШ внешний IP: "3.146.178.250"
У вас новых личных сообщений · Мой профиль | Выход




    Главная      
...
На службе : дней

19:39
Обновить


Пользователи
aka_kludge
qwerty
LeadyTOR
aka_Atlantis
AdHErENt
mAss
Sissutr
hiss
DrBio
tHick

Поиск


Copyright tHR - TeAM 2024 г. admin: aka_kludge (ICQ:334449009) Moderator's: LeadyTOR, ... Яндекс.Метрика