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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2016, 21:22   #1
Armar
Новичок
Джуниор
 
Регистрация: 14.05.2016
Сообщений: 3
Печаль массивы,что не так

В программе должна быть реализована защита от дурака,тоесть цифр больше 20 или буквы,на такой запрос программа отвечает "неправильный ввод повторите", дальше идет часть с динамическим массивом,проблемаив том,что программа не работает,прошу помощи,в чем ошибка?
Код:
#include "stdafx.h" 
#include <algorithm> 
#include <iostream>  
 
using namespace std;
 
int main(int argc, char* argv[])
{
 setlocale(LC_ALL, "Russian");
 
    int n = 0;
 
    cout <<"Введи номер страницы (от 1 до 20):";
 
    while (!(cin >> n) || n < 1 || n>20)
    {
        cin.clear();
        while (cin.get() != '\n');
        cout << "Неправильный ввод. Повторите.\n";
        cout << "Введи номер страницы\n";
    }
     cout << "Введи размер массива: ";
 
    int N; cin >> N; // получение от пользователя размера массива 
    int *p_darr = new int[N]; // Выделение памяти для массива 
 
    for (int i = 0; i < N; i++)
 
    {
 
        // Заполнение массива и вывод значений его элементов 
 
        p_darr[i] = i;
 
        cout << "Значение " << i << "-го элемента равно " << p_darr[i] << endl;
 
    }
 
    delete[] p_darr; // очистка памяти 
 
                     //cin.clear(); 
 
    while (cin.get() != '\n')
 
        ; // Пустой оператор 
 
    cout << "Введи номер страницы(от 1до 20):";
 
}
 
cout << endl;
 
system("pause"); // Только для тех, у кого MS Visual Studio 
 
return 0;
 
}
Пожалуйста, оформляйте Ваш код согласно правилам.

Последний раз редактировалось Armar; 14.05.2016 в 22:58.
Armar вне форума Ответить с цитированием
Старый 14.05.2016, 21:37   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Я, конечно, понимаю, что можно посмотреть, в код программы, найти ошибку, поотлаживать его, но принципиально этого делать не буду - это за то, что вы не указали, что у вас не получается, в чём ошибка, что и где не работает, что выдаёт программа, а что вы от неё ожидаете.
Вадим Мошев вне форума Ответить с цитированием
Старый 14.05.2016, 22:59   #3
Armar
Новичок
Джуниор
 
Регистрация: 14.05.2016
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Вадим Мошев Посмотреть сообщение
Я, конечно, понимаю, что можно посмотреть, в код программы, найти ошибку, поотлаживать его, но принципиально этого делать не буду - это за то, что вы не указали, что у вас не получается, в чём ошибка, что и где не работает, что выдаёт программа, а что вы от неё ожидаете.
Извините,я все поправил в описании ошибки,помогите пожалуйста.
Armar вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать так,что бы при введение,например 0;0 выдавалось сообщение,что точка находится на границе? TEIROP Visual C++ 4 08.11.2015 20:19
написать программу массивы (C++) - Даны два массива, скопировать эти массивы в 3-й результирующий (размером 10 элементов) так, что Саша1990 Помощь студентам 1 02.02.2015 16:03
Функции. Массивы. Делфи7. Что не так? Fatalita Помощь студентам 2 09.05.2012 20:24
Что-то не так в программе...не пойму что Karina_Vamp Помощь студентам 5 24.12.2010 21:06