Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Евгения Е
0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 11
#1

Одномерный массив, как выйти? - C++

03.06.2014, 20:04. Просмотров 274. Ответов 7
Метки нет (Все метки)

Вообщем, в программировании я не сильна.
Поэтому обращаюсь за помощью.
У меня задача:
Дан вещественный массив A[N], в котором не повторяются значение элементов.
Как мне сделать так, что если у меня количество мною введённых элементов превышает указанное, программа автоматически писала ошибку?
То есть например, мне выводит программа ""Введите количество элементов N:" я ввожу 4
и когда я пишу больше 4х элементов, программа работает дальше, когда должна выводить ошибку?
Я знаю только, что нужно сделать два цикла, у меня только один.Как быть?
PS УКАЗАТЕЛИ ИСПОЛЬЗОВАТЬ НЕЛЬЗЯ

Вот сама программа

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
using namespace std;
 
void main()
{
setlocale(LC_ALL, "Rus");
int n;
cout<<"Введите количество элементов N: ";
cin>>n;
double a[100];
double t;
cout<<"Введите элементы массива A: ";
for (int i = 0; i < n; i++)
{
cin>>t;
for (int j=0; j < i; j++)
if (a[j] == t)
{
cout<<"Ошибка"<<endl;
}
a[i] = t;
}
system ("pause"); }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2014, 20:04     Одномерный массив, как выйти?
Посмотрите здесь:

C++ Как возвратить одномерный массив
Как странспонировать одномерный массив C++
C++ Как создать одномерный динамический массив?
Как одномерный массив представить двумерным? C++
C++ Как передать одномерный массив в функцию?
C++ Строка двумерного массива как одномерный массив
C++ Одномерный массив, подскажите как вывести, как просит в задании
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4749 / 4087 / 1364
Регистрация: 14.04.2014
Сообщений: 16,031
03.06.2014, 20:10     Одномерный массив, как выйти? #2
Как больше 4-х? Вводится число n, затем цикл повторяется n раз. Откуда лишнее?
Евгения Е
0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 11
03.06.2014, 20:18  [ТС]     Одномерный массив, как выйти? #3
nmcf, я привела пример насчет 4
Ну смотри
" Введите количество элементов N:" я написала 5
Затем мне пишет
Введите элементы массива A: я печатаю любые цифры 4 5 2 6 2 4 2 34
и то есть меня программа не останавливает, когда я ввела больше пяти элементов. Мне нужно сделать так, чтобы выводилась ошибка
Надеюсь понятно объяснила)
tegauss
30 / 24 / 24
Регистрация: 06.05.2014
Сообщений: 158
03.06.2014, 20:28     Одномерный массив, как выйти? #4
Евгения Е,

" Введите количество элементов N:" я написала 5
после этого Вы не сможете ввести больше пяти элементов. Предлагаю Вам серьезно задуматься над тем, почему
nmcf
4749 / 4087 / 1364
Регистрация: 14.04.2014
Сообщений: 16,031
03.06.2014, 20:31     Одномерный массив, как выйти? #5
Программа просто возьмёт первые n чисел. Так ли важно остальное? Ну тебе тогда надо проверять осталось ли что-то в потоке.
Евгения Е
0 / 0 / 0
Регистрация: 20.05.2014
Сообщений: 11
04.06.2014, 04:27  [ТС]     Одномерный массив, как выйти? #6
nmcf, мне это принципиально важно. Необходимо сделать по задани65ю
askurandrio
Заблокирован
14.06.2015, 22:05     Одномерный массив, как выйти? #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include "stdafx.h"
#include <cstdlib>
#include <iostream>
using namespace std;
 
void main()
{
setlocale(LC_ALL, "Rus");
double a[100]; int n; 
cout<<"Введите количество элементов N: "; cin>>n;
cout<<"Введите элементы массива A: ";
for (int i = 0; i < n; i++)
{
    cout<<"Введите элемент "<<i<<" = ";cin>>a[i];
}
a[i] = t;
}
system ("pause"); }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.06.2015, 06:12     Одномерный массив, как выйти?
Еще ссылки по теме:

C++ Как преобразовать одномерный массив в двумерный?
C++ Как представить многомерный массив в одномерный?
C++ Как упорядочить одномерный массив по возрастанию?
Матрица как одномерный массив с указателем C++
C++ Как перевернуть одномерный массив?

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

Или воспользуйтесь поиском по форуму:
lss
921 / 851 / 281
Регистрация: 10.10.2012
Сообщений: 2,701
15.06.2015, 06:12     Одномерный массив, как выйти? #8
Цитата Сообщение от Евгения Е Посмотреть сообщение
" Введите количество элементов N:" я написала 5
Затем мне пишет
Введите элементы массива A: я печатаю любые цифры 4 5 2 6 2 4 2 34
и то есть меня программа не останавливает, когда я ввела больше пяти элементов. Мне нужно сделать так, чтобы выводилась ошибка
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
    setlocale(LC_ALL, "Rus");
    int n;
    cout<<"Введите количество элементов N: ";
    cin>>n;
    double a[100];
    double t;
    cout<<"Введите элементы массива A: ";
    while (true)
    {
        for (int i = 0; i < n; i++)
        {
            cin >> t;
            a[i] = t;
        }
       
        if (cin && cin.rdbuf() ->in_avail() == 1)
            break;
        else
        {
            cin.clear();
            while (cin.get() != '\n');
            cout << "Ошибка!" << endl;
            cout <<"Введите элементы массива A: ";
        }
    }
    system ("pause");
Миниатюры
Одномерный массив, как выйти?  
Yandex
Объявления
15.06.2015, 06:12     Одномерный массив, как выйти?
Ответ Создать тему
Опции темы

Текущее время: 01:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru