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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.12.2011, 13:09   #1
ruslannos
Пользователь
 
Регистрация: 14.12.2011
Сообщений: 13
Стрелка Обясните по готовой програме, что значит w=0; w=1; x=i;w==0?

Вот программа:
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
#include <clocale>
using namespace std;



int _tmain(int argc, _TCHAR* argv[])

{
setlocale(LC_CTYPE, "rus");
double i,x,a,b,y,q,e1,e2,e3,w;
cout << "Введите a,b; e1 как шаг и e2 для определения правильности решения" << endl;
cin >>a>>b>>e1>>e2;
w=0;
e3=0-e2;
for (i=a; i<=b;i=i+e1)
{
x=i;
q =5*x*x*sin(1/(3*x+2))+ 1;
if (q<e2||q>e3)
{
cout << " Ответ: " << x << " Результат: " << q << endl;
w=1;
}
}
if (w==0)
{
cout << "Ответов нет";
}
_getch();
}
ruslannos вне форума Ответить с цитированием
Старый 14.12.2011, 13:27   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

w - в данном случае играет роль флага. Зачем он там double совсем не ясно. Байта хватило бы за глаза (ну уже если гонитесь за скоростью, то можно взять слово). Изначально он сбрасывается, и подразумевается что решений нет. Потом производится расчет и проверка решения. если оно есть w=1 иначе становится неизменным.
w==0 это операция сравнения w c нулем. Если равно то соответственно прога пишет - ответов нет (а если есть то решение выдается раньше, сразу как оно будет найдено). Обратите внимание в с++ = и == это разные операции из-за чего часто путаются. Дело в том что если Вы в условии напишите w=0 вместо w==0 то получите совсем другое поведение программы и проверку на равенство следует проводить именно как ==
x=i здесь вообще глупость. Здесь x следует удалить из программы, а в формуле:
Код:
q =5*x*x*sin(1/(3*x+2))+ 1;
вместо икса следует сразу писать i
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 14.12.2011 в 13:30.
Utkin вне форума Ответить с цитированием
Старый 14.12.2011, 13:39   #3
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,885
По умолчанию

w=0 - переменной w присвоить значение 0.
w=1 - переменной w присвоить значение 1.
x=i - переменной x присвоить значение переменной i.
w==0 - сравнить значение переменной w с нулем.
Arigato вне форума Ответить с цитированием
Старый 14.12.2011, 17:06   #4
ruslannos
Пользователь
 
Регистрация: 14.12.2011
Сообщений: 13
По умолчанию

Как будет выглядет програма написаная с помощью функций
ruslannos вне форума Ответить с цитированием
Старый 14.12.2011, 17:09   #5
ruslannos
Пользователь
 
Регистрация: 14.12.2011
Сообщений: 13
По умолчанию

Эта же программа))
ruslannos вне форума Ответить с цитированием
Старый 14.12.2011, 17:10   #6
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

Цитата:
Сообщение от ruslannos Посмотреть сообщение
Как будет выглядет програма написаная с помощью функций
Если правильно написана -- будет радовать глаз.
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 14.12.2011, 17:21   #7
ruslannos
Пользователь
 
Регистрация: 14.12.2011
Сообщений: 13
По умолчанию

Да я понимаю что будет радовать,токо как будет вяглядеть
ruslannos вне форума Ответить с цитированием
Старый 14.12.2011, 17:41   #8
Mandrivnyk
Software Developer
Участник клуба
 
Аватар для Mandrivnyk
 
Регистрация: 01.03.2011
Сообщений: 1,098
По умолчанию

тыц
Болтовня ничего не стоит. Покажите мне код. (c) Linus Torvalds
Помог ответ? -- Поставьте отзыв.
Выражения особой благодарности в рублевом эквиваленте отправлять сюда --> R269634919062
Mandrivnyk вне форума Ответить с цитированием
Старый 14.12.2011, 17:54   #9
ruslannos
Пользователь
 
Регистрация: 14.12.2011
Сообщений: 13
По умолчанию

Мда.......
ruslannos вне форума Ответить с цитированием
Старый 15.12.2011, 12:35   #10
ruslannos
Пользователь
 
Регистрация: 14.12.2011
Сообщений: 13
По умолчанию

Это занимает много времени?я что то не пойму,как это делается
ruslannos вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
max:0:2 что значит 0 ??? русяй Паскаль, Turbo Pascal, PascalABC.NET 6 30.06.2011 09:59
Обясните что значит amator_roma Помощь студентам 0 23.06.2011 13:39
Что значит \n в С++ compod Общие вопросы C/C++ 11 02.05.2011 02:45
Что это за знак и что он значит? Яр|/||< (^_^) Свободное общение 10 04.07.2010 13:16
Что значит Inc(x)? Vadim123456 Помощь студентам 6 27.04.2010 23:19