усложнённый вариант(всё работает исправно,при вводе больше или меньше 3 чисел выводится сообщение "это не трёхзначное число! "):
vari,a,d: integer; s: string; beginwriteln('введите трёхзначное число '); read(s); d: =length(s); if d< > 3 thenwrite('это не трёхзначное число! '); if d=3 thenif (s[1]=s[2])or(s[1]=s[3])or(s[2]=s[3]) thenwrite('да')elsewrite('нет'); end.
простой вариант(выводится ошибка если цифр больше или меньше трёх! ):
vari,a,d: integer; s: string; beginwriteln('введите трёхзначное число '); read(s); if (s[1]=s[2])or(s[1]=s[3])or(s[2]=s[3]) thenwrite('да')elsewrite('нет'); end. 2 варианта, так-как незнаю,проходили ли вы функцию "length" или нет.если нет,то препад заподозрит что вы списали откуда нибудь или вам кто-то подсказал.
пояснения
n - количество символов в алфавите (включая пробелы и другие символы)
k - колличество букв в сообщении (в данном случае строки умножаем на кол-во букв в строке)
i - колличество бит, выделенных под кодированние одного символа
v - объем сообщения
формула - запомнить на будущее для более простых вычислений
n=16
k=12*20=240
v=?
решение
1)n=2 в степени i (формула), значит 16=2 в степени 4, значит i=4 бит
2)v=k*i(формула), значит при k=240 , i=4, v=240*4=960 бит = 120 байт
ответ: 960бит, или 120байт
Поделитесь своими знаниями, ответьте на вопрос:
Найти сумму двух цифр заданного двузначного числа в pascal