Вопрос № 44328: Здравствуйте эксперты!
Помогите найти ошибку в моей задаче когда я нажимаю стрелку вверх или вниз то у меня окно "ломается" и появляется какой-то копирайт типа "Borland C++ 1989"
короче шняга какая-то.
И еще как сделат...Вопрос № 44349: Уважаемые эксперты, подскажите пожалуйста, как на Visual C++ создать новый поток, и есть ли ещё какие варианты сделать так, чтобы параллельно прога и выполняла какие-то действия и реагировала на нажатие кнопок и т.д.? Заранее спасибо. ...Вопрос № 44369: Люди ну скажите пожалуйста почему ф-я "menu();" не выводится после заполнения структуры хотя я ее прописал вроде бы в нужном
месте?
И еще такой вопрос вот у меня белый цвет фона на нем синий текст;
почему после второго запуска про...Вопрос № 44401: Здравствуйте, дорогие эксперты.
Я недавно начал изучать C++ и решил написать базу данных(тел. справочник).
В моей программе не работает функция загрузки.(см. приложение)
Пожалуйста, помогите найти ошибку!
Спасибо!...Вопрос № 44405: Здраствуйте уважаемые эксперты,помогите студенту чем сможите. Есть задача на С++ ,а чо делать не знаю! "Задана система двусторонних дорог. N - периферией называется множество городов, расстояние от которых до выделенного города(столицы) больше ...
Вопрос № 44.328
Здравствуйте эксперты!
Помогите найти ошибку в моей задаче когда я нажимаю стрелку вверх или вниз то у меня окно "ломается" и появляется какой-то копирайт типа "Borland C++ 1989"
короче шняга какая-то.
И еще как сделать так чтобы после ввода структуры прога не завершалась а опять выводилось меню чтобы можно было дальш еработать со структурой?
Приложение:
Отправлен: 26.05.2006, 19:55
Вопрос задал: W4rmonger (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Vest
Здравствуйте, W4rmonger!
Окно ломается из-за цикла:
for(i = 0; i < 8; i++) // не 8, а 6 == количеству строк menutext
{
gotoxy(2, i + 2);
textcolor((i - pos) ? BLUE : GREEN);
cprintf("%s", menutext[i]); menutext[6 и 7] - не существует
}
далее нужно исправить строку:
if(pos < 6) pos++; // на 5, т.к. иначе будет выделяться следующая за "выходом" строка (а её нет)
ну и для того, чтобы программа не выходила необходимо в строке функции main
while(choice!=27 && choice!=13); убрать второе условие, отвечающее за enter
но необходимо предусмотреть очистку экрана после ввода BD
--------- Халявы не бывает
Ответ отправил: Vest (статус: 2-ой класс)
Ответ отправлен: 26.05.2006, 21:38 Оценка за ответ: 5 Комментарий оценки: Хочу сказать тебе огромное спасибо! Ошибка исправлена...
Вопрос № 44.349
Уважаемые эксперты, подскажите пожалуйста, как на Visual C++ создать новый поток, и есть ли ещё какие варианты сделать так, чтобы параллельно прога и выполняла какие-то действия и реагировала на нажатие кнопок и т.д.? Заранее спасибо.
Отправлен: 27.05.2006, 01:49
Вопрос задал: CoB (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Zitz
Здравствуйте, CoB!
В приложении кусок кода, он у меня в программе срабатывает по баттонКлик
foo - глобальная функция arg - аргумент этой функции (входящий параметр), когда эта функция выполнится поток завершится. В это время можете как угодно реагировать ;)
К примеру:
void foo(char * atg)
Приложение:
--------- Успех неизбежен
Ответ отправил: Zitz (статус: Студент)
Ответ отправлен: 27.05.2006, 02:23 Оценка за ответ: 4
Вопрос № 44.369
Люди ну скажите пожалуйста почему ф-я "menu();" не выводится после заполнения структуры хотя я ее прописал вроде бы в нужном месте?
И еще такой вопрос вот у меня белый цвет фона на нем синий текст;
почему после второго запуска проги через borland 3.1 становится белым весь экран монитора? и как это предотвратить?
Приложение:
Отправлен: 27.05.2006, 09:38
Вопрос задал: W4rmonger (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Vest
Здравствуйте, W4rmonger!
Я вроде уже говорил, для того, чтобы меню появлялось - убери второе условие в функции main: не
while(choice!=27 && choice!=13);
,а
while(choice!=27);
Просто, когда ты нажимаешь Enter (13), цикл завершается!
А белый фон возникает при вызове функции clrscr; в main. Экран очищается текущим background'ом, поставь перед оператором очистки экрана следующую строку:
textbackground(BLACK);
Тогда всё будет чёрным.
Да, кстати, поменяй все функции exit(1); на что-нибудь другое, типа return -1; а то при невозможности открытия файла программа всегда закрывается без вопросов :) и следуй предупреждениям компилятора - их оч. много в твоей прорамме.
--------- Халявы не бывает
Ответ отправил: Vest (статус: 2-ой класс)
Ответ отправлен: 27.05.2006, 19:11
Вопрос № 44.401
Здравствуйте, дорогие эксперты.
Я недавно начал изучать C++ и решил написать базу данных(тел. справочник).
В моей программе не работает функция загрузки.(см. приложение)
Пожалуйста, помогите найти ошибку!
Спасибо!
Приложение:
Отправлен: 27.05.2006, 15:43
Вопрос задал: Вадик (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Vest
Здравствуйте, Вадик!
Если честно, то эта функция больше похожа не на функцию загрузки, а на функцию сохранения данных в поток. Почему? Потому, что ты ВЫВОДИШЬ в файловый поток свой список (fprintf), для считывания ИЗ потока нужно использовать fscanf. Также я заметил, что ты используешь не
, а \n\r - это некорректно.
Для загрузки у тебя может возникнуть следующая проблема - тебе необходимо будет "пропускать" шапку таблицы. В случае с базой данных я рекомендую сохранять не в текстовом файле, а в двоичном (бинарном) всю структуру целиком, т.к. перемещаться по данным будет легче, единственная сложность - это нельзя будет в блокноте :) редактировать. Эта функция удобна для отобажения информации, на мой взгляд, а не для использования, т.к. длины строк разные получаются.
Ну и небольшой совет, если ты начал изучать С++ (а не С), то старайся использовать стандартную библиотеку ввода-вывода.
--------- Халявы не бывает
Ответ отправил: Vest (статус: 2-ой класс)
Ответ отправлен: 27.05.2006, 18:52 Оценка за ответ: 5
Вопрос № 44.405
Здраствуйте уважаемые эксперты,помогите студенту чем сможите. Есть задача на С++ ,а чо делать не знаю! "Задана система двусторонних дорог. N - периферией называется множество городов, расстояние от которых до выделенного города(столицы) больше N. Определить N-периферию для заданного N. "
Отправлен: 27.05.2006, 16:07
Вопрос задал: Nikosz (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Vest
Здравствуйте, Nikosz!
Хм... интересно. Похоже здесь идёт речь о множестве всех городов, представленных в виде графа (раз дороги двусторонние, значит граф симметричный, не уверен в терминологии :). И при вводе растояния N необходимо вывести весь список городов, до которых можно "доехать".
Задачу необходимо решить след. образом - заполнить граф, конечно же ввести N, и потом "процтись" по графу в поиске городов - для прохождения графа используй алгоритмы, которые можно найти в Инете.
--------- Халявы не бывает
Ответ отправил: Vest (статус: 2-ой класс)
Ответ отправлен: 27.05.2006, 19:20 Оценка за ответ: 4 Комментарий оценки: спасибо,но конечно хотелось бы увидеть хотя бы наброски,так как только начал изучать С++ и мало что понимаю =(