• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Робота с генератором случайных чисел

  • Автор темы Guest
  • Дата начала
G

Guest

Есть кусок кода:

mas=rand()%100-50;
ass= (char) mas;
cout << ass << "\n”;

После выполнения выводит белиберду, а в текстовый файл (он дальше по коду) нечего не пишется. :) А как зделоть так что – б на экран цифры вывались, и в файл цифры записались.
Заранее спасибо.
 
E

European

Напишите на листочке возможные результаты работы кода и поймете, что белиберда это нормальный результат
 
G

Guest

но мне нужны числа, а он мне дал символы, смайлики, пики, кресты. бубы. А когда я отправляю ето всё в файл ( fputs( ass, file); ) он мне сообщает об ошибке (cannot convert parameter 1 from 'char' to 'const char *').
 
E

European

но мне нужны числа, а он мне дал символы, смайлики, пики, кресты. бубы
Всё правильно. Я не зря Вам говорил написать результаты работы кода на листочка.
Итак:
rand() генерирует значения от 0 до RAND_MAX (32767). Вот представьте, получили Вы сгенерированное число 30000.
30000 % 100 = 0; 0 - 50 = -50
Ну и какой символ соответсвует коду -50?
 
G

Guest

Ага, я понял. :(
А если мне надо ввести на экран и ввести в файл не "символ № -50" а просто -50 (в смысле 3 символа такие) B)

Спасибо за помощь.
 
G

Guest

Но тогда я не могу отправить число в файл.
fputs( mas , file) - выдаёт ошибку, потому что int отправлять в файл нельзя.
 
B

bizybiz

European, ненененененене!! и еще раз не!
Смотри в сторону fprintf(..) !!!
Вот что например у тебя должно получиться: fprintf( file, "%d", mas );
 
B

bizybiz

European, это уже отговорки уважаемый)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!