Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Jin200611
14 / 14 / 0
Регистрация: 09.01.2012
Сообщений: 253
#1

Не получается исправить ошибку (Вводится диапазон, где 1-ое число-начало диапазона, 2-ое число приращени, 3-е число конец диапазона) - C++

17.06.2013, 21:40. Просмотров 415. Ответов 6
Метки нет (Все метки)

Здравствуйте. Не могу исправить ошибку.
Задание: Вводится диапазон, (например 5,1,10) где 1-ое число-начало диапазона, 2-ое число приращение (1 или -1), 3-е число конец диапазона. Обеспечить контроль существования диапазона.
На выходе диапазоны записывать в следующем виде:
range (<старт>, <приращение>, <финиш>)
Например:
5...10 на выходе range (5,1,10)
5...0 на выходе range (5,-1,0)
5,2...10 на выходе range (5,2,10)
5,-2...10 выдает ошибку «Неправильно задан диапазон».

Заранее всем спасибо.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <string>
#include <sstream>
#include <iostream>
using namespace std;
int main()
{
    char delim1, delim2;
    double a,b,c,d;
    d=c-a;
    string str= "5,1,10";
    stringstream ss(str);
    if(!(ss>>a>>delim1>>b>>delim2>>c))
        cout<<"Ошибка ввода!"<<endl;
    else
        if (a>c,b<0,b<d) .or. (a<c,b>0,b<c)
            cout<<"range (5,1,10)"<<endl;
        else
            cout<<"Неправильно задан диапазон"<<endl;
    cin.get();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.06.2013, 21:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не получается исправить ошибку (Вводится диапазон, где 1-ое число-начало диапазона, 2-ое число приращени, 3-е число конец диапазона) (C++):

Пользователь вводит с клавиатуры две границы диапазона и число. Проверить, попадает ли число в диапазон - C++
Пользователь вводит с клавиатуры две границы диапазона и число. Если число не попадает в диапазон, программа просит пользователя повторно...

Поле first — целое число, левая граница диапазона, включается в диапазон; поле second — целое число, правая граница диапазона, не включается в диапазо - C++
8. Поле first — целое число, левая граница диапазона, включается в диапазон; поле second — целое число, правая граница диапазона, не...

Поместить число большого диапазона в меньший диапазон - C++
Доброго времени суток. Требуется разделить одно восьмибайтовое число на другое восьмибайтовое число. Сложность заключается в том, что...

Случайное число из диапазона от 0 до 1 - C++
Почему то на random ругается компилятор мол &quot;random: идентификатор не найден&quot; вроде и библиотеку stdlib.h подтянул. Пишу в С++ в вижуал...

Заменить данное натуральное число на число, которое получается из исходного записью его цифр в обратном порядке. Например, дано число 156, нужно получ - C++
Вобщем,если не сложно,именно саму функцию помочь написать,ибо я просто не могу понять:) Добавлено через 22 минуты вот так...

Ввести целое число N. Вывести все простые числа из диапазона [2,N] - C++
Нужна помощь в решении некоторых задач. 1. Ввести целое число N. Вывести все простые числа из диапазона 2. Ввести строку и два слова,...

6
ViktorKozlov
133 / 125 / 2
Регистрация: 13.12.2012
Сообщений: 293
17.06.2013, 21:51 #2
C++
1
.or.
What is it?
0
Jin200611
14 / 14 / 0
Регистрация: 09.01.2012
Сообщений: 253
17.06.2013, 21:53  [ТС] #3
.оr. - или
0
Ezembi
100 / 87 / 3
Регистрация: 29.05.2013
Сообщений: 227
17.06.2013, 21:55 #4
Цитата Сообщение от Jin200611 Посмотреть сообщение
C++
1
if (a>c,b<0,b<d) .or. (a<c,b>0,b<c)
Oh shit!
Лучше так:
C++
1
if((a>c&&b<0&&b<d)||(a>c&&b<0&&b<d))
1
Jin200611
14 / 14 / 0
Регистрация: 09.01.2012
Сообщений: 253
17.06.2013, 22:08  [ТС] #5
Ezembi, Спасибо выручил. Также спасибо всем кто помогал.
0
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
17.06.2013, 22:41 #6
Цитата Сообщение от Ezembi Посмотреть сообщение
Лучше так:
C++
1
if((a>c&&b<0&&b<d)||(a>c&&b<0&&b<d))
Справа и слева от || одно и тоже.
0
Jin200611
14 / 14 / 0
Регистрация: 09.01.2012
Сообщений: 253
17.06.2013, 22:47  [ТС] #7
alsav22, Я видел и исправил. Но все равно спасибо.
0
17.06.2013, 22:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.06.2013, 22:47
Привет! Вот еще темы с ответами:

Как найти целое число из диапазона от 0 до N, которое не встречается в массиве A? - C++
Как найти целое число из диапазона от 0 до N, которое не встречается в массиве A?

Отсортировать массив, вводим начало диапазона и конец, программа считает все что в промежутке - C++
Доброго вечера Вам.Нужно написать программу : Используя указатели в упорядоченном по возрастанию массиве подсчитать сумму элементов,...

Вводится число от 1 до 15. Вывести данное число, записанное римскими цифрами - C++
Вводится число от 1 до 15. Вывести данное число, записанное римскими цифрами (I, II, III, IV, V, VI, …., XV);С++ плииииз!

Напечатать таблицу умножения на заданное число (число вводится с клавиатуры) - C++
Напечатать таблицу умножения на заданное число (число вводится с клавиатуры). Например для числа 7 таблица будет иметь вид 1 х 7 = 7 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.