Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2014, 17:26   #1
Ilai
Пользователь
 
Регистрация: 10.09.2014
Сообщений: 90
Восклицание Модуль

Добрый день!

Помогите пожалуйста с программой. Написал её, а нужно ещё сделать модуль. Сама программа вот(без модуля, в первоначальном виде)
Код:
Program Lab_7;

var  s, s1: string;
     i, j, k:integer;

begin
    
write('Введите строку= ');
    readln(s);
    s:=s+' ';
    k:=1;
       for i:=1 to length(s) do
      begin
      if s[i]=' ' then begin
       for j:=i-1 downto k do
         s1:=s1 + s[j];
         s1:=s1 + ' ';
         k:=i;
        end;
end;
    writeln('Результат= ', s1);
 end.

Далее попытался написать модуль, но не совсем получилось.

Модуль:
Код:
unit modul;

interface

Procedure Inver;

implementation

Procedure Inver;

begin

Procedure Inver;
var  s, s1: string;
     i, j, z, k:integer;

begin

write('Введите строку= ');
    readln(s);
    s:=s+' ';
    k:=1;
       for i:=1 to length(s) do
      begin
      if s[i]=' ' then begin
       for j:=i-1 downto k do
         s1:=s1 + s[j];
         s1:=s1 + ' ';
         k:=i;
        end;
end;
end;
end.
Программа в результате:
Код:
Program Lab_7;
uses modul;

begin
    Procedure Inver(s, s1);
    writeln('Результат= ', s1);
end.
Знаю, что тут куча ошибок. Модули никогда не писал. Сейчас делал, используя информацию, которую нашел. Помогите пожалуйста

Последний раз редактировалось Ilai; 10.12.2014 в 17:28. Причина: Допустил ошибку
Ilai вне форума Ответить с цитированием
Старый 10.12.2014, 18:04   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,504
По умолчанию

Дело не в модуле. Там, на первый взгляд ошибок не видно.
Дело в том, что вы похоже совсем не умеете работать с процедурами.
Из модуля
Код:
Procedure Inver;
begin
Procedure Inver;  // зачем второй раз ?
Из программы
Код:
 Procedure Inver(s, s1);
- так процедуы не вызываются
И вообще, читайте про параметры ( аргументы) подпрограмм.
type_Oleg вне форума Ответить с цитированием
Старый 10.12.2014, 18:59   #3
Ilai
Пользователь
 
Регистрация: 10.09.2014
Сообщений: 90
По умолчанию

Цитата:
Сообщение от type_Oleg Посмотреть сообщение
Дело не в модуле. Там, на первый взгляд ошибок не видно.
Дело в том, что вы похоже совсем не умеете работать с процедурами.
Из модуля
Код:
Procedure Inver;
begin
Procedure Inver;  // зачем второй раз ?
Из программы
Код:
 Procedure Inver(s, s1);
- так процедуы не вызываются
И вообще, читайте про параметры ( аргументы) подпрограмм.
Ну вот вроде написал:

Модуль:
Код:
unit modul;
interface
Procedure Inver(var s:string);
implementation
Procedure Inver(var s:string);
var s1: string;
    i, j, z, k:integer;
begin
s:=s+' ';
k:=1;
for i:=1 to length(s) do
 begin
  if s[i]=' ' then
   begin
     for j:=i-1 downto k do
     s1:=s1 + s[j];
     s1:=s1 + ' ';
     k:=i;
   end;
 end;
s:=s1;
end;
end.
Программа:

Код:
uses modul;
var  s: string;
begin
write('Введите строку= ');
readln(s);
inver(s);
writeln('Результат= ', s);
end.
Программа работает, но единственное, перед выводом ответа выводит часть директории и различные символы, не подскажите, из-за чего может такое быть?
Изображения
Тип файла: jpg Снимок.JPG (21.3 Кб, 109 просмотров)
Ilai вне форума Ответить с цитированием
Старый 10.12.2014, 19:23   #4
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,504
По умолчанию

А что в строке s1 в самом начале ?
Добавьте
Код:
 begin
  s:=s+' ';
  s1:='';   // вот это добавьте. Пустая строка 
  k:=1;
type_Oleg вне форума Ответить с цитированием
Старый 10.12.2014, 19:52   #5
Ilai
Пользователь
 
Регистрация: 10.09.2014
Сообщений: 90
По умолчанию

Ага, всё, понял. огромное спасибо Вам за помощь!
Ilai вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В модуль поместить функции сортировки символьных и числовых массивов. Подключить созданный модуль и применить эти функции к вводим Tuns Помощь студентам 6 27.05.2014 15:07
Создать собственный модуль и программу, использующую этот модуль. Oraner Паскаль, Turbo Pascal, PascalABC.NET 2 02.12.2012 13:15
Модуль Graph или графический модуль Seferus Паскаль, Turbo Pascal, PascalABC.NET 0 11.12.2011 13:15
Типизированные файлы, модуль Crt, Модуль Graph Kate_Fleur Помощь студентам 1 06.05.2010 17:43
модуль romich.91 Паскаль, Turbo Pascal, PascalABC.NET 0 26.05.2009 20:27