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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.01.2011, 12:49   #1
WitaliG
Пользователь
 
Регистрация: 17.08.2010
Сообщений: 75
По умолчанию Задача на процедуры в Паскале

Здравствуйте!
Изучая Паскаль по книге «Песни о Паскале» я дошел до раздела «Процедуры». Автор написал процедуру Calc и предлагает читателям самим написать программу подсчитывающую количество символа А в строке.
Я что-то попытался написать, но вообще – «темный лес». Поэтому прошу помочь разобраться в этой программе, желательно с комментариями.
С уважением Виталий.
Код:
procedure Calc (const arg : string; Ch1 : char; var Res : integer);
var k : integer;
begin
        res :=0;
        for k := 1 to Length(arg) do
                if arg[k] = Ch1 then Res := Res + 1;
end;
var i,k : integer; S : string;
begin
        writeln('Введи строку: '); readln(S);
        Calc(Ch1);
        writeln('Количество букв À = ',Res);
        readln;
end.
WitaliG вне форума Ответить с цитированием
Старый 25.01.2011, 13:13   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Ты сравни параметры авторской процедуры и что ты сам в нее передаешь.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 25.01.2011, 14:23   #3
k0tone
Пользователь
 
Аватар для k0tone
 
Регистрация: 09.11.2010
Сообщений: 99
По умолчанию

Выглядеть должно подобно этому:
Код:
procedure Calc (arg:string; Ch1:char; var Res:integer);
 var
   k:integer;
 begin
   res:=0;
   for k:=1 to Length(arg) do
     if arg[k]=Ch1 then
     Res:=Res+1;
 end;


 var
   Res:integer;
   Ch1:char;
   S:string;
 begin
   writeln('Введи строку: '); readln(S);
   Ch1:='a';
   Calc(S,Ch1,Res);
   writeln('Количество букв A = ',Res);
   readln;
 end.
Если я вам помог - нажмите на весы пот аватаркой!
k0tone вне форума Ответить с цитированием
Старый 25.01.2011, 16:24   #4
WitaliG
Пользователь
 
Регистрация: 17.08.2010
Сообщений: 75
По умолчанию

Спасибо k0tone, все хорошо работает.
WitaliG вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Процедуры в паскале Денис999 Помощь студентам 1 18.12.2010 12:31
Процедуры в Паскале bwitcher Помощь студентам 12 04.12.2010 12:19
Процедуры в Паскале venomdanger Помощь студентам 5 05.07.2010 09:20
Процедуры в паскале swedalena Помощь студентам 3 02.06.2010 23:06
Процедуры на паскале tanek Помощь студентам 0 03.05.2009 00:26