Вот такая суть задачи:
Есть текстовый файл, в котором меститься текст программы(по условию это предыдущия лаба, но это неиграет роли сейчас). Составить блок=схему программы. Одно из заданий оформить в виде подпрограммы:
...вот само задание:
Сформировать и вывести на экран текстовый файл в каком символы ";" заменить на "END_LINE"...(С этим я как бы разобрался). Подсчитать колличество больших и маленьких букв в каждой строке (вот это не могу додуматься)...
Если кто-то знает как это сделать или есть какой-то алгоритм.. огромная просьба.. завтра сдавать
и что с этим посчитанным количеством делать?
заводишь 2 счетчика, идешь по строке. если буква большая - прибавляешь 1 к первому, если маленькая - ко второму.
или проблема с определением их размера?
ОФФ-топ:
мисс_граффити, читал темку там где препод процетировал твой пост? Эть, а обошлось как?
у нас препод наверно браузером пользовать не умеет а главное учит программированию
А я то думал, что только мне д******** преподы попались.. оказуеть
Надо потом вывести колличество больших и маленьких букв в каждой строчке... И если считывать посимвольно,(у меня не получаеться), как определять большая буква или маленькая? (в константах все переписать?)..
Можешь кодом выложить?
if ch = UpCase(ch) then { Буква большая }
else { Буква маленькая }
Нужна только латинь... спс.
Такой еще вопрос, чтобы считывало каждую строчку по порядку и сделать вывод для каждой строчки в конце как?
Volvo: (поиск поможет, уже было на форуме)...
Я не нашел, можешь ссылку на тему дать?
Вот тут: http://forum.pascal.net.ru/index.php?s=&showtopic=3169&view=findpost&p=28432
есть функция для перевода всей строки в верхний регистр, она элементарно переделывается в функцию перевода одного символа...
Это та функия что в посте №9?.. Голова болит ужасно, если не затруднит помоги еще плз (кодом) с считыванием посимвольно каждой строчки и выводе на экран(не в файл) колличества больших и маленьких файлов в конце каждой строчки (чтобы считывало сначало первую строчку-- потом вторую и т.д.)
...
readln(f,s);
for i:=1 to length(s) do
if s[i]....
далее пойдет условие проверки большая буква или маленькая?
да...
это от него кусочек виднеется.
приведенный фрагмент - естественно, внутри цикла
while not(EOF(f)) do
Запутался окончательно, ушел спать ...
Ну их эти лабы...
Еще раз я не понял: ( меня 20 минут чтобы исправить... я вот что сделал
program lab4;
uses crt;
var f1,f2:text;
i,j,k,d:byte;
s,r:string;
m:string;
p:array [1..10] of byte;
begin
assign(f1,'D:\f1.txt');
assign(f2,'D:\f2.txt');
reset(f1);
rewrite(f2);
while not eof(f1) do
begin
r:=' ';
k:=0;
readln(f1,s);
for i:=1 to length(s) do
begin
if s[i]=';' then r:=r+'END_LINE'
else r:=r+S[i];
if s[i] IN ['a'..'z'] then k:=k+1;
{ if s[i] in ['A'..'Z'] then d :=d+1; }
end;
writeln(f2,r);
write(f2,k);
writeln(f2,d);
end;
close(f1);
close(f2);
readln
end.
а зачем ты подсчет заглавных букв сделал комментарием? и d не обнуляешь...
кстати, у меня что-то сомнение, что их количество влезет в byte
Убери коммент увидишь, что оно считает что-то не то... все-время очень большие цифры получаються..
7минут
Спасай
Точно, обнулись забыл)) вроде получилось))))))))))))))))))))