|
Вопрос # 5 408/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
Доброго времени суток, уважаемые эксперты!
Подскажите пожалуйста как реализовать такую часть программы, остальное все я уже написал (новичек совсем)
пользователь вводит данные Z, если они в диапазоне от 0.25 до 0.76 то все ок, едем дальше, а если выходят за диапазон, то выводится сообщение "введены неверные данные Z" и возвращается на повтор ввода Z. Код пишу на ВС4.5, совсем старенький - но это единственное что есть в моем институте. ЗАранее огромное спасибо. Пробовал вот так, но не получается
 |
Вопрос задал: fff_GODsTBAPb (статус: Посетитель)
Вопрос отправлен: 14 июня 2011, 07:39
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: min@y™
Ну вот как-то так:
do
{
cout << "\n Введите значение(z) - ";
cin >> z;
} while ((z < 0.25) || (z > 0.76));
 |
Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 14 июня 2011, 08:26
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 8; последнее сообщение — 14 июня 2011, 21:42; участников в обсуждении: 4.
|
fff_GODsTBAPb (статус: Посетитель), 14 июня 2011, 11:09 [#1]:
Спасибо огромное) но есть одно но... Работает как раз наоборот, хотя я даже сам не понимаю почему. Позволяет вводить любые значения, кроме 0.25-0.76. Знаки менял уже по всякому, эффекта ноль...(
|
|
fff_GODsTBAPb (статус: Посетитель), 14 июня 2011, 11:11 [#2]:
Может надо тип z не double?
Или может какую то особую библиотеку подключить? вот на всякий случай весь код
#include <conio.h>
#include <iostream.h>
#include <windows.h>
#include <math.h>
int main()
{
double C = 0;
double Pz = 0;
int s = 0;
int v = 0;
double t = 0;
double z = 0;
double x = 0;
double y = 0;
double a = 427;
cout << "\n $$$ ПРОГРАММА РАСЧЕТА КОЛИЧЕСТВА ТЕПЛА И ТЕМПЕРАТУРЫ РЕЗАНИЯ $$$";
cout << "\n ";
cout << "\n Введите коэффициент, характеризующий условия обработки (С) - ";
cin >> C;
cout << "\n Введите силу резания (Pz) - ";
cin >> Pz;
cout << "\n Введите подачу (s), мм/об - ";
cin >> s;
cout << "\n Введите скорость резания (v) - ";
cin >> v;
cout << "\n Введите глубину резания (t), мм - ";
cin >> t;
do
{
cout << "\n Введите значение(z) - ";
cin >> z;
}
while ((z >= 0.25) && (z <= 0.76));
cout << "\n Введите показатель степени (x) - ";
cin >> x;
cout << "\n Введите показатель степени (y) - ";
cin >> y;
double Q = Pz*v/a;
double T = C*pow(v, z)*pow(s, x)*pow(t, y);
cout << "\n ";
cout << "\n ";
cout << " Количество тепла равно = " << Q << " кал/мин";
cout << "\n ";
cout << " Температура резаниЯ равна = " << T << " град.";
return 0;
}
|
|
min@y™ (статус: Доктор наук), 14 июня 2011, 11:25 [#3]:
Прошу прощения, с утра у меня мозги ещё спят. Попутал с паскалевским repeat...until. Ответ изменил, теперь должно работать.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Вадим К (статус: Академик), 14 июня 2011, 11:29 [#4]:
Посмотрите внимательней на Ваше условие для цикла и то, которое дал min@y™ в своем ответе.
правильно записать условие так
!((z >= 0.25) && (z <= 0.76))
что в принципе равно
(z < 0.25) || (z > 0.76)
что в принципе логично по правилам де Моргана
Галочка "подтверждения прочтения" - вселенское зло.
|
|
bugmenot (статус: 3-ий класс), 14 июня 2011, 16:05 [#5]:
Цитата (fff_GODsTBAPb):
ðàáîòêè (Ñ - ";
Блин, когда уже будет исправлена эта жуткая гомосятина?
Цитата (Вадим К):
по правилам де Моргана
Ого, не знал, что эти свойства носят чьё-то имя.
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
min@y™ (статус: Доктор наук), 14 июня 2011, 17:05 [#6]:
Цитата (bugmenot):
Ого, не знал, что эти свойства носят чьё-то имя.
Поступай в наш универ, там так в бошку этого Моргана и карты Карно вдолбят, что по ночам всю жизнь сниться будет.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
bugmenot (статус: 3-ий класс), 14 июня 2011, 19:22 [#7]:
Эти свойства настолько элементарно выводятся из определений И, ИЛИ и НЕ, что мне этого де Моргана даже не упомянули.
виконання програми розпочинається з того самого мiсця, де призупинилося.
|
|
fff_GODsTBAPb (статус: Посетитель), 14 июня 2011, 21:42 [#8]:
Огромное спасибо уважаемые эксперты, отдельно спасибо за то, что не стали зазнаваться, и ответили на такой глупый (для Вас) вопрос. Обещаю в ближайшее время пополнить ряды изучающих и уже пишуших Сишников! Все работает на ура, это моя первая прога!!! урааааааа....
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|