Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ КОМандная строка в ПАскаль

Автор: snapper 16.12.2010 4:38

Как сделать так чтобы работало не в подпрограмме Программы паскаль, а через командную строку??? помогите пожалуйста

Код
uses crt;
label metka;
var s:string; n,i:integer;
begin
metka:  write('Введите параметр: ');
  readln(s); n:=length(s);
  for i:=1 to n do begin
  s[i]:=LowCase(s[i]);
   if not (s[i] in ['a'..'z']) and not (s[i] in ['а'..'я']) then begin
             delete(s,i,1);
             if i<n then i:=i-1;
             n:=length(s);
             end;
end;
  writeln(s);  goto metka;
end.

Знаю только то что надо использовать paramstr, но как его правильно оформить??

Автор: volvo 16.12.2010 4:58

Для начала - переписать код так, чтоб он работал правильно без хаков (вот у меня Турбо-Паскаль не установлен, а FPC этот код не компилирует. Ибо нарушено все, что только можно).

Ну, и задание неплохо бы озвучить. А то "иди туда не знаю куда" уже неинтересно...

Автор: snapper 16.12.2010 15:24

Цитата(volvo @ 16.12.2010 0:58) *

Для начала - переписать код так, чтоб он работал правильно без хаков (вот у меня Турбо-Паскаль не установлен, а FPC этот код не компилирует. Ибо нарушено все, что только можно).

Ну, и задание неплохо бы озвучить. А то "иди туда не знаю куда" уже неинтересно...

Цитата
программа удаляет все символы не являющиеся буквами русского и английского алфавита... установи paskalABC

Автор: TarasBer 16.12.2010 15:32

Так, почему не надо удалять элементы из строки через Delete:
http://forum.pascal.net.ru/index.php?showtopic=26642

Автор: volvo 16.12.2010 15:43

Цитата
установи paskalABC
Ага, сейчас, побежал уже. Я его один раз установил, так он мне мало того, что все расширения PAS/PP/INC на себя перетянул, так еще и удалять его вручную. И не умеет практически ничего из того, что должен уметь Паскаль (за примерами - можно в поиск, можно - в приват). PascalABC у меня ассоциируется только с Recycle Bin.

Код все-таки перепиши. Потому что поддержка PascalABC прекращена, а вышедший ему на замену PascalABC.NET уже пошлет тебя с таким кодом куда подальше...


Эскизы прикрепленных изображений
Прикрепленное изображение

Автор: snapper 17.12.2010 0:37

Код
uses crt;
label metka;
var s:string; n,i:integer;
begin
metka:  write('Введите параметр: ');
  readln(s);
  n:=length(s);
  for i:=n downto 1 do
  s[i]:=LowCase(s[i]);
   if not (s[i] in ['a'..'z']) and not (s[i] in ['а'..'я']) then delete(s,i,1);
                                                                              i:=i+n;
    writeln(s);  goto metka;
end.

исправил VOLVO, но теперь как сделать так чтоб удалял символы не являющимися буквами??? удаляет тока первый символ(не букву) и то если писать его первым...
прошу помоги..