Дана строка.Определить сколько раз входит в нее группа букв a b c. Пожалуйста,не надо писать решай сама!
Var a,b,c, s:string; i,c:integer; begin readln(s); readln(a,b,c); for i:=1 to length(s) do begin if (s[i]=a) or (s[i]=b) or (s[i]=c) then c:=c+1; end; writeln('Группа букв a b c встречается ', c, ' раз'); readln; end.
нет, неправильный результат выдает
Тут, вероятно, надо не "or", а "and" использовать
a,b,c это, наверное в смысле переменные, а не конкретные буквы. Их значения вводить надо.
какой and? В s[i] хранится один символ так то. В нем не могут хранится три символа одновременно
Ну, не знаю... Но если в твою прогу ввести строку "abcasdhabc", то она выдает ответ, что группа abc встречается 7 раз. Проверь сам.
Тогда пускай поподробнее распишет, что хочет пользователь от программы.
А про "аnd" я говорил не в том смысле, что просто заменить ею "or", а в том, что его надо использовать в логике программы.
Если переформулировать задачу, то она выглядит так: определить сколько раз встречаются буквы а b c? Так?
Твоя программа считает количество букв, на надо количество не отдельных букв, а всей группы. Т.е. сколько раз встречается фрагмент "abc". Я так думаю, может, я и не прав.
Хотя да, может и ты прав.