|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.09.2011, 20:04 | #1 |
Форумчанин
Регистрация: 16.12.2010
Сообщений: 175
|
Ошибка в коде...
вот я залил на файлообменник условие задачи:
http://zalil.by/files/39b392daeae7ff73e нужно чтобы в итоге z1 был равен z2...вот мой код, исправьте плз ошибки... Код:
Последний раз редактировалось Stilet; 30.09.2011 в 21:30. |
30.09.2011, 21:32 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Код:
I'm learning to live...
|
|
01.10.2011, 00:06 | #3 |
Форумчанин
Регистрация: 16.12.2010
Сообщений: 175
|
я так пробывал, щас попробывал ещё раз, но ответы в z1 и z2 разные, а должны быть одинаковые...
посмотрите плз, может я допустил ошибку при переводе этого примера на язык программирования...вот мой код: Код:
|
01.10.2011, 04:24 | #4 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
С какой стати два разных выражения должны быть равны?
На файлооменник не заходит. Скрин выложи. |
01.10.2011, 08:08 | #5 | |
Форумчанин
Регистрация: 05.09.2011
Сообщений: 869
|
Цитата:
Во-первых, ты ошибся просто банально в скобках. Я не знаю, какое у тебя там задание, я просто прикинул, что ТАК это выглядеть НЕ ДОЛЖНО. Совершенно не удивительно, что ты ошибся - ты понаставил кучу лишних скобок.. Зачем? Например: (5/4)*3.14 - зачем тут скобки?? Согласись, больше не всегда лучше. Но если ты их поставишь правильно то все равно будет считаться НЕПРАВИЛЬНО. Потому что.. .. во-вторых, ты не учел разницу между целым делением (с остатком) и вещественным (с дробью). Дело в том, что в C/C++ оба эти действия обозначаются ОДИНАКОВО - слешем: "/". А различаются они по типу операндов. Если оба операнда ЦЕЛЫЕ - то производится деление нацело, а остаток просто отбрасывается, например: 12/5 = 2 3/4 = 0 В данном же случае тебе это не надо, ты просто считаешь значение дроби (хотя я не понимаю, почему бы тебе сразу не записать 5/4 как 1.25). Поэтому, чтобы деление было точным, надо писать не целые константы, а действительные. Это можно сделать, просто добавив точку, вот так: 12./5. = 2.4 3./4. = 0.75 Сечешь фишку? Даю тебе полностью исправленный код. Советую провести эксперимент: убери точки при числовых константах (где деление) - увидишь разницу. Код:
Еще одно: обрати внимание на то, как используется pi. Успехов тебе.
Предпочитаю на "ты".
|
|
01.10.2011, 23:32 | #6 |
Форумчанин
Регистрация: 16.12.2010
Сообщений: 175
|
спасибо огромное, расписал всё просто и понятно...только один вопрос: чем будет отличаться Void main от Int main ?
|
01.10.2011, 23:46 | #7 |
Форумчанин
Регистрация: 29.09.2011
Сообщений: 103
|
int - возвращает значение! //полезно при проверке программы на нормальное завершение
void - не возвращает ничего! |
02.10.2011, 01:22 | #8 |
Форумчанин
Регистрация: 05.09.2011
Сообщений: 869
|
9i собвершенно прав, +1 (кстати, я забыл добавить тут возврат значения).
Только я хочу дополнить его ответ. Когда программа завершает работу, она ДОЛЖНА вернуть операционной системе КОД ЗАВЕРШЕНИЯ. При этом 0 будет означать успешное завершение, а все остальное - код встреченной ошибки. Как это использовать? Во-первых, main() должна быть int. Во-вторых, при нормальном выходе делай return 0. А если произошла ошибка (например, не был найден конфиг-файл) - тогда return 2 (это к примеру, номера ошибок разным событиям присвой сам).
Предпочитаю на "ты".
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ошибка в коде С | Mr.Merso | Помощь студентам | 4 | 10.05.2011 00:52 |
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? | ankris | HTML и CSS | 5 | 23.11.2010 16:58 |
Ошибка в коде | Cronos20 | PHP | 3 | 09.07.2010 23:31 |
ошибка в коде | Pytnik | Паскаль, Turbo Pascal, PascalABC.NET | 45 | 25.05.2010 17:30 |
Ошибка в коде | Bigtyoma | Общие вопросы Delphi | 9 | 10.06.2009 16:35 |