Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.07.2018, 14:02   #1
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
Вопрос Компилятор бредит. Что не так?

Доброго времени суток! У помогите мне с проблемой. Компилятор выдаёт странные результаты. Результаты выполнения программы на скринах. Ещё загадочней когда ob.Show(); не один раз, а 3 раза, тут вообще бред.
Спасибо за помощь!
Изображения
Тип файла: jpg Снимок.jpg (93.7 Кб, 143 просмотров)
Тип файла: jpg Снимок2.jpg (85.7 Кб, 119 просмотров)
Тип файла: jpg Снимок3.jpg (86.1 Кб, 145 просмотров)
Тип файла: jpg Снимок4.jpg (97.9 Кб, 119 просмотров)
Тип файла: jpg Снимок5.jpg (98.9 Кб, 117 просмотров)
Тип файла: jpg Снимок6.jpg (92.7 Кб, 124 просмотров)
Мaкс вне форума Ответить с цитированием
Старый 21.07.2018, 14:59   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Посмотрел ваш комикс. Проблема то в чем? Все ж правильно.
p51x вне форума Ответить с цитированием
Старый 21.07.2018, 15:08   #3
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Проблема то в чем? Все ж правильно.
Хотелось бы, что бы где "Вы ввели peremen, оно (не)чётное." вывело вместо рандомного числа значение переменной peremen. А вместо несколько раз ob.Show(); бред не выводил.
Мaкс вне форума Ответить с цитированием
Старый 21.07.2018, 15:12   #4
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Я понял. Нужно заменить Console.Read на что то другое. Read это считает символ и записывает номер в формате int.
Мaкс вне форума Ответить с цитированием
Старый 21.07.2018, 15:20   #5
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Ясно, вы опять основы не читаете и лезете использовать более "низкоуровневые" функции.
Давайте рассмотрим пару ваших примеров:
1. Строка '8'. В peremen будет https://en.wikipedia.org/wiki/Windows-1251 число 56. Вывод вашей программы "Вы ввели число 56, оно четное" -> все правильно.
2. Строка 'п'. Первый вызов - п -> 1087. CR -> 13, LF -> 10. И опять все правильно.

Где бред? Где проблема?

Цитата:
Сообщение от Мaкс Посмотреть сообщение
Read это считает символ и записывает номер в формате int.
А что, офф документация что-то другое утверждала?
p51x вне форума Ответить с цитированием
Старый 22.07.2018, 07:46   #6
Мaкс
Форумчанин
 
Регистрация: 12.06.2018
Сообщений: 831
По умолчанию

Я забыл про Parse, это решение этой проблемы! Это:
Код:
int peremen = Console.Read();
заменил на:
Код:
int peremen = Int32.Parse(Console.ReadLine());
И всё заработало! Спасибо за напоминания об коде символов!
Изображения
Тип файла: jpg Снимок.jpg (89.2 Кб, 150 просмотров)
Мaкс вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Картинка в шапке не двигается, что с style.ss не так?или что? Redass HTML и CSS 7 09.11.2016 17:48
Как сделать так,что бы при введение,например 0;0 выдавалось сообщение,что точка находится на границе? TEIROP Visual C++ 4 08.11.2015 20:19
Торрент бредит ололошенько Помощь студентам 1 03.09.2013 12:40
Что за компилятор это... Arsenx777 Общие вопросы Delphi 2 09.07.2011 19:29