C++ // Строки
Вывести на экран строку, введенную пользователем до первой буквы «р»
ImSlady:
..
Можно подробнее?
Ответы
Ответ дал:
1
#include <iostream>
#include <cstring>
using namespace std;
int main ()
{
string s;
getline(cin, s);
int p = 0;
while(s[p] != 'p')
p++;
cout << s.substr(0, p);
return 0;
}
Крэшиться если ввожу пустую строку!
и ввидите P большую и посмотрите что будет.
asdP например без маленькой p
А можно много разной фигни придумать, чтобы любую задачу закрэшить. Но если писать со всеми заморочками антивандальное чудо, то оно разбухнет просто смертельно и 80-90% народа кда не поймут. Поэтому, к примеру, ЕГЭшные условия говорят о том, что всякиепроверки исхзодных данных делать не надо, если об этом не сказано явно.
А тут понятно, что если нет этой "p", будет зацикливание.
Я этому гражданину тут писал с проверкой, https://znanija.com/task/33387772 видать он ничего не понял))
Вот потому и не понял (возможно). А может наоборот, он знает, что подобные проверки отсутствия черной кошки в темной комнате в школьных задачах не требуются.
Проверка несложная - проверять исчерпание символов строки, а вот с пустотой хуже. cin вообще ненавидит пустые строки, а вводить по getc - еще та затея. По крайней мере, все это надо знать.
Вас заинтересует
1 год назад
1 год назад
1 год назад
1 год назад
3 года назад
3 года назад
8 лет назад