Посчитать количество строчных (маленьких) и прописных (больших) букв в введенной строке. Учитывать только английские буквы.
Ввести две переменные для подсчета строчных и прописных букв. Присвоить им нули.
Перебирая символы строки от первого до последнего (номер последнего определяется длиной строки),
если очередной символ — это буква, которая не меньше «a» и не больше «z», то увеличить на 1 переменную-счетчик строчных букв,
иначе аналогично проверить принадлежность символа диапазону от «A» до «Z». Если символ ему принадлежит, то увеличить счетчик прописных букв.
Как видно из алгоритма, небуквенные символы вообще не учитываются. Тот факт, что буквы можно сравнивать связан с тем, что в таблице кодов символов они идут друг за другом по порядку. Например, буква «a» имеет код на единицу меньше, чем «b», т.е. стоит перед «b».
Pascal
количество строчных букв в строке паскаль
var
str: string;
i, len, let_b, let_s: byte;
begin
readln(str);
len := length(str);
let_b := 0;
let_s := 0;
for i:=1 to len do
if (str[i] >= 'a') and (str[i] <= 'z') then
let_s := let_s + 1
else
if (str[i] >= 'A') and (str[i] <= 'Z') then
let_b := let_b + 1;
s = input()
let_s = 0
let_b = 0
for i in s:
if 'a' <= i <= 'z':
let_s += 1
else:
if 'A' <= i <= 'Z':
let_b += 1
print(let_s)
print(let_b)
КуМир
алг количество разных букв
нач
лит s
цел i, len, let_b, let_s
ввод s
len := длин(s)
let_s := 0
let_b := 0
нц для i от 1 до len
если s[i] >= "a" и s[i] <= "z" то
let_s := let_s + 1
иначе
если s[i] >= "A" и s[i] <= "Z" то
let_b := let_b + 1
все
все
кц
вывод let_s, нс
вывод let_b, нс
кон
Basic-256
input s$
let_s = 0
let_b = 0
for i=1 to length(s$)
l$ = mid(s$,i,1)
l = asc(l$)
if l>=asc("a") and l<=asc("z") then
let_s = let_s + 1
else
if l>=asc("A") and l<=asc("Z") then
let_b = let_b + 1
endif
endif
next i
print let_s
print let_b
В Бейсике при сравнении самих букв (а не их кодов напрямую) большие учитывались также, как и маленькие. Хотя если написать выражение ("A" = "a"), то оно возвращает ложь.
Подписаться
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Pascal
количество строчных букв в строке паскаль
var str: string; i, len, let_b, let_s: byte; begin readln(str); len := length(str); let_b := 0; let_s := 0; for i:=1 to len do if (str[i] >= 'a') and (str[i] = 'A') and (str[i]
Язык Си
#include < stdio.h>
main() { char str[255]; int i,let_b, let_s; gets(str); let_s = 0; let_b = 0; for (i=0; str[i]!='\0'; i++) if (str[i] >= 'a' && str[i] = 'A' && str[i]
Python
количество заглавных букв в строке python (питон)
s = input() let_s = 0 let_b = 0 for i in s: if 'a'
КуМир
алг количество разных букв нач лит s цел i, len, let_b, let_s ввод s len := длин(s) let_s := 0 let_b := 0 нц для i от 1 до len если s[i] >= "a" и s[i] = "A" и s[i]
Basic-256
input s$ let_s = 0 let_b = 0 for i=1 to length(s$) l$ = mid(s$,i,1) l = asc(l$) if l>=asc("a") and l=asc("A") and l