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

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

Войти
Регистрация
Восстановить пароль
 
wolf0022
2 / 2 / 0
Регистрация: 17.12.2013
Сообщений: 148
#1

Случайный и не случайный вывод чисел в одномерном массиве - C++

11.04.2014, 21:46. Просмотров 319. Ответов 10
Метки нет (Все метки)

Задача: Написать программу по обработке одномерных массивов. Размеры массивов вводить с клавиатуры. В консольном приложении предусмотреть возможность ввода данных как с клавиатуры, так и с использованием функции random().
Сумму элементов массива, расположенных между первым и последним положительными элементами.
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <iostream>
 using namespace std;
 
int main(int argc, char* argv[])
{
  float x[10];
int y,a,i,n,f,j(-1), k(0);
float s(0);
cout <<"N=";
cin >>n;
cout<<"AutoComplete - 1, manual input 2 \n";
cin>>y;
 
switch(y)
{
case 1:
cout<<"\nMassiv x ";
for(i=0; i<n;i++) {
a[i] = rand()%15-7;
cout<< x[i]<<" ";
}
break;
case 2:
for (i=0; i<n;i++)
cin>> a[i];
cout<<"\nMassiv x  ";
for(i=0; i<n;i++)
cout<< x[i]<<" ";
break;
default: 
cout<<endl;
system("pause");
exit(0);
}
 
 for ( int counter = 0; counter < n; counter++ ) // ???? ??? ?????? ????????? ???????
        cout << x[counter] << " ";
 
  for(int i = 0; i<n; i++)
        if(x[i]>0)
        {
             j<0 ? j = i : k = i;
        }
     for(int i = j+1; i<k; i++)
        s+=x[i];
     std::cout<<'\n'<<s<<'\n';
        system("pause");
    return 0;
}
//---------------------------------------------------------------------------
ошибки [C++ Error] Unit1.cpp(22): E2062 Invalid indirection
[C++ Error] Unit1.cpp(28): E2062 Invalid indirection
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2014, 21:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Случайный и не случайный вывод чисел в одномерном массиве (C++):

Случайный вывод значений переменных - C++
Доброй ночи, мне тут подруга дала задачку, написать программу-гадалку. Ну мол, вводишь вопрос, а она выдает &quot;Да&quot; или &quot;Нет&quot;. Проблема в...

Случайный вывод в программе тест - C++
Доброй ночи. Написал простую программу тест которая считает верные ответы и в конце выводит результат. Хотел бы усложнить задачу путем...

Случайный выбор из трех заданных чисел - C++
Здравствуйте, как сделать выбор из 3 числ (1, 0 и 0,5) ????

Написать программу, упорядочивающую случайный массив чисел - C++
Дана неупорядоченная последовательность чисел a = {a0, a1, …, aN}. Отсортировать a методом обменной сортировки со слиянием Бэтчера. ...

rand() не случайный - C++
почему на кажджой итерации rand() выдает одно и тоже значение ? srand((unsigned)time(NULL)); vector&lt;const string&gt; var(4); var...

Бинарный случайный поиск - C++
Прошу помочь с решением задачи бинарного поиска. Однако диапазон индексов должен при каждом шаге уменьшаться не в 2 раза, а на случайное...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Vavilon757
1 / 1 / 2
Регистрация: 09.04.2014
Сообщений: 14
11.04.2014, 21:53 #2
Ну я думаю переменную а нужно писать так ) int a[10];
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
11.04.2014, 21:54 #3
Переменная "a" объявлена как число, а используется как массив.
wolf0022
2 / 2 / 0
Регистрация: 17.12.2013
Сообщений: 148
11.04.2014, 22:05  [ТС] #4
всем спасибо, ошибку нашел, но программа не решается как надо, чуть позже переделаю тему

Добавлено через 6 минут
короче теперь такой код: теперь программа просто крашится
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <iostream>
 using namespace std;
 
int main(int argc, char* argv[])
{
  float x[10];
int y,a,i,n,f,j(-1), k(0);
float s(0);
cout<<"AutoComplete - 1, manual input 2 \n";
cin>>y;
 
switch(y)
{
case 1:
cout<<"\nMassiv x ";
for(i=0; i<n;i++) {
 x[i] = rand()%15-7;
cout<< x[i]<<" ";
for ( int counter = 0; counter < n; counter++ ) // ???? ??? ?????? ????????? ???????
        cout << x[counter] << " ";
 
  for(int i = 0; i<n; i++)
        if(x[i]>0)
        {
             j<0 ? j = i : k = i;
        }
     for(int i = j+1; i<k; i++)
        s+=x[i];
     std::cout<<'\n'<<s<<'\n';
        system("pause");
    return 0;
}
 
case 2:
for (i=0; i<n;i++)
cin>> x[i];
cout<<"\nMassiv x  ";
for(i=0; i<n;i++)
cout<< x[i]<<" ";
for ( int counter = 0; counter < n; counter++ ) // ???? ??? ?????? ????????? ???????
        cout << x[counter] << " ";
 
  for(int i = 0; i<n; i++)
        if(x[i]>0)
        {
             j<0 ? j = i : k = i;
        }
     for(int i = j+1; i<k; i++)
        s+=x[i];
     std::cout<<'\n'<<s<<'\n';
        system("pause");
    return 0;
}}
 
//---------------------------------------------------------------------------
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
11.04.2014, 22:07 #5
wolf0022, Вы пишете код просто наугад, чтобы другие люди Ваши ошибки искали что ли?
wolf0022
2 / 2 / 0
Регистрация: 17.12.2013
Сообщений: 148
11.04.2014, 22:12  [ТС] #6
форум создан для помощи? (советов на крайняк), вот для этого пишу, код писал не наугад
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
11.04.2014, 22:19 #7
Цитата Сообщение от wolf0022 Посмотреть сообщение
код писал не наугад
А не похоже. Вот например строка 19. Цикл до n. А чему равно n?
wolf0022
2 / 2 / 0
Регистрация: 17.12.2013
Сообщений: 148
11.04.2014, 22:29  [ТС] #8
спасибо разобрался, но теперь массив выводится два раза, подскажите пожалуйста как исправить?
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <iostream>
 using namespace std;
 
int main(int argc, char* argv[])
{
  float x[10];
int y,a,i,n,f,j(-1), k(0);
printf("Input N (<=15) ");
cin>>n;
float s(0);
cout<<"AutoComplete - 1, manual input 2 \n";
cin>>y;
switch(y)
{
case 1:
cout<<"\nMassiv x ";
for(i=0; i<n;i++) {
 x[i] = rand()%15-7;
cout<< x[i]<<" ";
}
break;
case 2:
for (i=0; i<n;i++)
cin>> x[i];
cout<<"\nMassiv x  ";
for(i=0; i<n;i++)
cout<< x[i]<<" ";
break;
default: 
cout<<endl;
system("pause");
exit(0);
}
 
 for ( int counter = 0; counter < n; counter++ ) // ???? ??? ?????? ????????? ???????
        cout << x[counter] << " ";
 
  for(int i = 0; i<n; i++)
        if(x[i]>0)
        {
             j<0 ? j = i : k = i;
        }
     for(int i = j+1; i<k; i++)
        s+=x[i];
     std::cout<<'\n'<<s<<'\n';
        system("pause");
    return 0;
}
//---------------------------------------------------------------------------
Миниатюры
Случайный и не случайный вывод чисел в одномерном массиве  
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
11.04.2014, 22:45 #9
Ветка case 2: заканчивается на 31 строке и управление переходит на 38.
Пора познакомиться с программой, которую называют "отладчик"
wolf0022
2 / 2 / 0
Регистрация: 17.12.2013
Сообщений: 148
11.04.2014, 22:49  [ТС] #10
http://s4.pikabu.ru/images/big_size_...184602357.jpeg
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
11.04.2014, 23:04 #11
wolf0022, пошаговое выполнение. Debug. Точки останова и всё такое.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2014, 23:04
Привет! Вот еще темы с ответами:

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

Случайный выбор вопроса - C++
Здравствуйте, как можно сделать так, чтобы выпадал случайный вопрос из нескольки добавленных в программу, тоесть например когда запускаешь...

Случайный выбор билета - C++
Составить программу случайного выбора билета в театр из 5 предлагаемых, причем с вероятностью 3/8 придется отдыхать дома.

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
11.04.2014, 23:04
Ответ Создать тему
Опции темы

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