![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
![]()
Вставить ник | Быстрая цитата | Сообщение
#301
|
|
![]() Энтузиаст ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 355 Регистрация: 28.08.2005 Пользователь №: 9490 ![]() |
Написал программу на С++. Задание: "За каждый день апреля известна температура и был ли дождь. После 1ого дождя найти среднее арифметическое температур." Компилятор ошибок не находит, но программа работает неверно.
Код #include <stdio.h> void main(){ char d='n'; int den=0; float t=0; float td; while(d=='n'){ if(den==31){printf("dojda za aprel ne bilo"); break;} printf("vvedite tempiraturu: "); scanf("%f", &td); t=td+t; printf("bil li dojde? da - y, net - n "); scanf("%c", &d); den=den+1; } t=t/den; printf("srenaya temperatura %f\n", t); } Но в таком варианте прога работает. Код #include <stdio.h> void main(){ int d=0; int den=0; float t=0; float td; while(d==0){ if(den==31){printf("dojda za aprel ne bilo"); break;} printf("vvedite tempiraturu: "); scanf("%f", &td); t=td+t; printf("bil li dojde? da - 1, net - 0 "); scanf("%d", &d); den=den+1; } t=t/den; printf("srenaya temperatura %f\n", t); } Подскажите, что не так с 1 программой? Сообщение отредактировано BHYCHIK - 22.10.2007 - 21:01 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#302
|
|
![]() void* ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 ![]() |
Неверно - это как? Беглое сравнение ошибок не выявляет.
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#303
|
|
![]() Энтузиаст ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 355 Регистрация: 28.08.2005 Пользователь №: 9490 ![]() |
Даже не считывая переменную n, происходит выход из цикла: выводится сообщение "bil li dojde? da - y, net - n ", затем сразу же выводится средняя темпиратура. Я работал в VS2005.
Сообщение отредактировано BHYCHIK - 22.10.2007 - 17:09 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#304
|
|
![]() void* ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1631 Регистрация: 29.09.2003 Пользователь №: 45 ![]() |
Странно. Тогда подробнее. В каком компиляторе первый вариант НЕ работает? в каком варианте он работал?
Попробуй так. Код #include <stdio.h> void main(){ char d[2]; int den=0; float t=0; float td; d[0]='n'; while(d[0]=='n'){ if(den==31){printf("dojda za aprel ne bilo"); break;} printf("vvedite tempiraturu: "); scanf("%f", &td); t=td+t; printf("bil li dojde? da - y, net - n "); scanf("%c", d); den=den+1; } t=t/den; printf("srenaya temperatura %f\n", t); } в %c - строго малая c. Это принципиально. |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#305
|
|
![]() Энтузиаст ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 355 Регистрация: 28.08.2005 Пользователь №: 9490 ![]() |
В предыдущем посте я имел ввиду, что Я работал в Визуал студии 2005. На других компиляторах не пробовал. Твоя версия работает с тем же глюком
![]() |
|
|
Guest_Al Jay_* |
![]()
| Быстрая цитата | Сообщение
#306
|
Гости ![]() |
замени цикл на for, поставь флаг, если пользователь вводит, что дождь был - циклу break, считаем среднюю температуру. Если цикл весь завершён - говорим, что дождя не было, return из функции.
Синтаксис плюсов не знаю - помог чем мог =) Тьфу, оказывается уже решили проблему =) Первая прога не работает видимо из-за особенностей сравнения типа char. И вообще, для таких случаев есть тип данных bool =)) который либо true, либо false =) ps. попробуй в первом случае объявить d константой. Сообщение отредактировано Al Jay - 29.10.2007 - 01:27 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#307
|
|
![]() Это вам не это... ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 3175 Регистрация: 16.05.2005 Пользователь №: 8054 ![]() |
Ребят! Огромная просьба помочь.. Обращаюсь сюда впервые ибо ситуация просто ужасная.. надеюсь на вас..
Вобщем ЛР по предмету ППМПС.. проще говоря по асемблеру.. Задание: Разработайте программу, которая перекрашивала бы буквы(но не фон) экрана в зависимости от нажатия на соответствущую клавишу.Предусмотреть все возможные варианты цвета букв. Как сказали,для тех кто знает, лаба очень простая.. Мне очень нужна ваша помощь ![]() Сообщение отредактировано InTestAnalWorm - 11.12.2007 - 16:24 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#308
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
под ДОС? винду? линь?
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#309
|
|
![]() Это вам не это... ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 3175 Регистрация: 16.05.2005 Пользователь №: 8054 ![]() |
интеловский асемблер.. Зна что делаем в программе Tasm.exe
вроде как в досе Сообщение отредактировано InTestAnalWorm - 11.12.2007 - 16:52 |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#310
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
Ну и какие сложности?
Проверяешь видеорежим, чтобы знать количество знакомест (а можно и не проверять, а просто менять "на все деньги")... ставишь обработчик клавиатурного прерывания, чтобы ловить клавиши, по нажатию заданой клавиши прямо в видеопамяти тупо меняешь атрибуты цвета символов... не забудь сохранить начальное состояние атрибутов и восстановить по завершению программы. |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#311
|
|
![]() Это вам не это... ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 3175 Регистрация: 16.05.2005 Пользователь №: 8054 ![]() |
Вот если я понимал о чём ты говоришь))
В инсте асемблер один семестр.. на лекциях совершенно другое.. Вот примерно мне и сказли что для тех кто понимает это ерунда ![]() |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#312
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
а-а-а... ну тады сорри... оно, конечно ерунда, но некогда, да и, признаться, лениво - потому что неинтересно.
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#313
|
|
![]() Это вам не это... ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 3175 Регистрация: 16.05.2005 Пользователь №: 8054 ![]() |
А если за какое нить вознограждение?
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#314
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
не влияет. сорри.
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#315
|
|
![]() Это вам не это... ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 3175 Регистрация: 16.05.2005 Пользователь №: 8054 ![]() |
Может ещё кто-нить в этом понимает? Просто это правда нериально нужно... так бы постеснялся попросить...
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#316
|
|
![]() Продвинутый новичок ![]() ![]() Группа: Участник Сообщений: 16 Регистрация: 20.06.2006 Пользователь №: 14157 ![]() |
Привет ребят! Помогите кто может, надо прогу по Java сделать. Вообщем вывести на экран все простые числа на интервале от 1 до 500.(Все числа, которые делятся ток на себя и на 1). В любом случае спасибо.
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#317
|
|
![]() Это вам не это... ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 4043 Регистрация: 17.03.2004 Пользователь №: 2796 ![]() |
|
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#318
|
|
![]() Продвинутый новичок ![]() ![]() Группа: Участник Сообщений: 16 Регистрация: 20.06.2006 Пользователь №: 14157 ![]() |
Может я чего-то не поинмаю, но при такой постановке задачи нужно выводить все цифры указанного диапазона. Нет простые числа это 1, 3, 5, 7, 11, 13 и т.д. т.е. они делятся только сами на себя и на 1. Все цифры не надо вывдоить или это я не очень понимаю, что ты спросил. |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#319
|
|
![]() Частый гость ![]() ![]() ![]() Группа: Участник Сообщений: 138 Регистрация: 17.01.2005 Пользователь №: 6166 ![]() |
простые числа это 1 2 3 4 5 6 7 8 9 10 11 12...
не понятно что имеится ввиду деляться сами на себя и на 1 лучше приведи простой пример и расскажи как программа должна работать и что вывести |
|
|
![]()
Вставить ник | Быстрая цитата | Сообщение
#320
|
|
Частый гость![]() ![]() ![]() Группа: Участник Сообщений: 204 Регистрация: 30.05.2005 Пользователь №: 8240 ![]() |
|
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 16.06.2025 - 13:24 |