Форум программистов, компьютерный форум, киберфорум
Наши страницы

Програма неадекватно себя ведет - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Генератор слов для телефонного номера http://www.cyberforum.ru/cpp-beginners/thread331788.html
Вот такая вот интересная задачка у Дейтела есть: 17.13. (Генератор слов для телефонного номера) Стандартный набор кнопок телефона содержит цифры от 0 до 9. Каждая цифра от 2 до 9 имеет связанные с...
C++ Вызов метода из метода Можно ли вызвать метод из метода. Это программа не работает #include<iostream> using namespace std; class a {private: int b,c,d; public: void fc() {cout<<"Функция намбер ван"<<endl;} void... http://www.cyberforum.ru/cpp-beginners/thread331737.html
C++ работа с файлами
Здравствуйте! Мне надо написать программу которая будет: Каждую минуту/две/десять/двадцать проверять файл на изменения. Если изменения произошли то будет копировать его 3и4 строки/2и5 (без разницы)...
C++ Поиск книги
Видел в магазине эту книгу, хотел скачать в интернете ее, но никак не могу найти. Помогите... Герберт Шилдт С++ Шаг за шагом Запрещено давать ссылки на скачивание программ и книг с...
C++ строка символов http://www.cyberforum.ru/cpp-beginners/thread331729.html
не понимаю как решить задачу решите пожалуйста если не трудно заранее спасибо. Дана строка символов S. Выяснить имеется ли в строке такие числа последовательности Sj ,Sj+1, что Sj-это запятая, а...
C++ Исправление ошибок в программе vector<int>v; int x; while(cin>>x) v.push_back(x); for(int i=0; i<v.size(); ++i); cout << "v == " << v << endl; keep_window_open(); В 4 строке warning C4018: '<' : signed/unsigned mismatch -... подробнее

Показать сообщение отдельно
kravam
быдлокодер
1703 / 890 / 45
Регистрация: 04.06.2008
Сообщений: 5,489
11.07.2011, 15:13
Так, правильно было бы потребовать у тебя данные, на которых прокалываешься. Ввожу 2, 2 потом 4. Программа вылетает. Должна работать корректно при таких данных?

Добавлено через 13 минут
Подожди с массивом, будем последовательны.
Короче, ввод данных 2, 2, 4 вызывает ошибку. Напиши так:
C++
1
2
3
4
if(style_=='4')
{
printf ("high_1= %d\n", high_1);
getchar ();
И ты увидишь что high_1 у тебя не определена. А потому не определена, что чуть выше напишем:

C++
1
2
3
4
5
6
7
8
9
10
printf ("m= %d\n", m);
getchar ();
 
switch (m)
{
    case 1:break;
    case 2:high_1=high-1;wide_1=wide-1;break;
    case 3:high_1=high-1;break;
    case 4:wide_1=wide-1;break;
}
Ага, видим, что при m== 1 high_1 не определяется. Нехорошо! Нигде у тебя не указаны ограничения на ввод! ТО же наблюдаем при вводе данных 4, 4, 4 или 2, 4, 4

Вот отсюда
C++
1
2
3
4
5
6
7
int def_type (int k_1, int k_2)
{
    if(k_1%2==0 && k_2%2==0) return 1;
    if(k_1%2!=0 && k_2!=0) return 2;
    if(k_1%2!=0 && k_2==0) return 3;
    if(k_1%2==0 && k_2!=0) return 4;
}
Возвращается единица и пошло- поехало, ужне знаю,что это ты так невзлюбил когда длина и ширина кратны двум... Короче, предупреждать надо.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.