Определить, сколько фамилий в списке состоят из 8 или 9 букв. (тема: строковый тип данных)
10-11 класс
|
Это без использования файлов
var spisok:array [word] of string; {объявляем массив для хранения фамилий}
n,i,k:word; {n - количество фамилий,i - вспомогательная переменная, k - количество фамилий в списке равных 8 или 9 буквам}
begin
write('Введите количество фамилий в списке n = ');readln(n);
for i:=1 to n do begin
write('Введите фамилию ',i,' :');
readln(spisok[i]);
if (length(spisok[i])=9) or (length(spisok[i])=8) then inc(k); {inc(k) - это тоже самое ,что k:=k+1; }
end;
writeln('Количество фамилий в списке состоящих из 8 или 9 букв = ',k);
end.
П.С. если вам потребуется,обработка конкретно через фаил напишите мне, так как в условии вы не указали точно через что!
Как по мне то лучше удобство и ничего лишнего, ведь список сохранять не говорили
var s:string;
k:integer;
Begin
repeat
write('Введите фамилию:');
readln(s);
if (length(s)=9) or (length(s)=8) then
k:=k+1
until s=''; {прекращаем чтенье если нам посылают пустую строку}
writeln(k);
End.
Другие вопросы из категории
Пожалуйста, помогите с информатикой:(
Даны целые положительные числа m,n и k. сформировать целочисленную матрицу размером m*n, у которой все элементы имеют значения k+i+j (i=1,2..m; j=1,2..n)
x:=0
for y:=1 to 9 do begin
x:=x+1;
writeln (x);
end;
котором A[i]<0, иначе выведите сообщение.
Читайте также
2. Определить, сколько Гбайт содержится в 512 байтах. Результат представить как возведенное в степень число 2.
Каждая из последующих цепочек создается такими действиями: в начало записывается буква, следующая по алфавиту за первой, далее записывается предыдущая строка и она же в обратном порядке символов (справа налево). Вот первые 4 строки, созданные по этому правилу:
(1) AB
(2) BABBA
(3) CBABBAABBAB
(4) DCBABBAABBABBABBAABBABC
16.1. С какой буквы начинается 13-я строка?
16.2. Сколько раз буква А встречается в 10-ой строке?
16.3. Какая буква стоит на 8-ой позиции в 11-ой строке?
16.4. Сколько раз встречается буква А в первых семи строках (суммарно)?
являются доменными именами различного уровня и разделены точками, а последняя отделена от них двоеточием и является портом, к которому обращается пользователь. Например, при обращении пользователя к www.ifmo.ru:8080 слово ru является доменным именем первого уровня, слово ifmo — доменным именем второго уровня, слово www — доменным именем третьего уровня, а 8080 является портом.
Вам необходимо по списку запросов пользователей в таком формате перечислить все различные порты, к которым обращались пользователи.
Формат входного файла
В первой строке входного файла input.txt находится одно натуральное число n (1 ≤ n ≤ 100) — количество адресов в данном вам списке. В следующих n строках содержатся сами адреса в формате, описанном выше.
Все доменные имена всех уровней состоят только из строчных букв латинского алфавита, а порты — только из цифр. Длина любого данного вам адреса не превышает 250 символов.
Формат выходного файла
В первой строке выходного файла output.txt выведите одно целое число k — количество различных портов, к которым обращались пользователи. В следующих k строках выведите сами порты. Каждый порт должен быть выведен ровно один раз в отдельной строке. Порты могут быть выведены в любом порядке.
Пример входных и выходных данных
input.txt
3
www.ifmo.pl:3389
www.ya.pl:65535
www.ifmo.kz:3389
output.txt
2
65535
3389
2) Вы бросаете два кубика с нанесенными на гранях цифрами от 1 до 6. Определите, сколько битов информации несет сообщение о том, что на одном кубике выпала тройка, а на другом- пятерка.
3) Предположим, вероятность того, что вы получите за контрольную работу оценку "5", равна 0,6; вероятность получения "4" равна 0,3; вероятность получения "3"-0,1. Определите, сколько битов информации будет нести сообщение о результатах контрольной работы в каждом из вариантов. ПОЖАЛУЙСТА, ПОМОГИТЕ!!!