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

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

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

Не компилируется программа. Нужно исправить ошибки. - C++

19.12.2011, 17:40. Просмотров 378. Ответов 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
#include <iostream>
#include <ctime>
 
using namespace std;
 
int sum(int n)
{
    for (int i=0,j=0;i<n;i++)
    {
        if (a[i]>0)
        {
           j++;
        }
    }
return j;
}
 
int main()
{
    int i,n,a[n];
    srand(time(NULL));
    cout<<"Vvedite razmer massiva: "
    cin>>n;
    cout<<"Ishodnyi massiv: ";
    for (i=0;i<n;i++)
    {
        a[i]=rand()%20-10;
        cout<<a[i]<<"  ";
    }
    cout<<"\nKolichestvo polojitelnyh: "<<sum();
    return 0;
}
Вот сама задача:
Написать и протестировать функцию, подсчитывающую количество положительных элементов в массиве.
Вот программа на паскале, которая работает (если кому понадобится):

Не по теме:

Pascal
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
var a:array[1..100] of integer;
i,n:integer;
function sum():integer;
var i,j:integer;
begin
for i:=1 to n do begin
if (a[i]>0) then
inc (j);
end;
sum:=j;
end;
 
begin
randomize;
write('Введите размер массива: ');
readln(n);
writeln('Исходный массив: ');
for i:=1 to n do begin
a[i]:=random(20)-10;
write(a[i],' ');
end;
writeln;
write('Количество положительных: ',sum());
 
end.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2011, 17:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не компилируется программа. Нужно исправить ошибки. (C++):

Нужно исправить ошибки - C++
Вот программа на c++ 6.0 выдает 6 ошибок и 1 warning, исправьте пожалуйста а то я уже 2 часа сижу вникнуть не могу #include &lt;iostream.h&gt;...

Нужно исправить ошибки - C++
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;sstream&gt; #include &lt;algorithm&gt; #include &lt;iterator&gt; #include &lt;unordered_map&gt; ...

нужно исправить ошибки) - C++
// ConsoleApplication1.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &lt;string&gt; #include...

Нужно исправить ошибки) - C++
Задание: В магазине сформирован список постоянных клиентов, который включает ФИО, домашний адрес и размер предоставленной скидки....

нужно исправить ошибки в коде - C++
вобщем, я уже писала по поводу этого задания: Описать класс, реализующий стек. Написать программу, использующую этот класс для...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
19.12.2011, 17:42 #2
Не вижу где создан массив a.
0
vipCODe
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 17
19.12.2011, 17:46  [ТС] #3
Цитата Сообщение от Chelioss Посмотреть сообщение
Не вижу где создан массив a.
исправил шапку
0
sovaz1997
CEO SOVAZ Corp.
380 / 226 / 2
Регистрация: 17.12.2011
Сообщений: 819
Записей в блоге: 1
Завершенные тесты: 1
19.12.2011, 17:48 #4
Тоже не вижу массив a
0
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
19.12.2011, 17:48 #5
Размер массива должен быть известен на момент компиляции.
Если вам надо создавать массив разной длины, то используйте стандартный класс vector или работайте с динамической памятью.
0
vipCODe
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 17
19.12.2011, 18:00  [ТС] #6
Можете ли вы составить данную программу? (Хотяб с готовым размером массива.) А то уже весь день сижу голову ломаю... Я только начинаю программировать, поэтому сильно пожалуйста не пинайте =)
0
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
19.12.2011, 18:06 #7
А книги читать не хотите? Думаете во одному вопросу в день на форуме быстрее будет?
0
vipCODe
0 / 0 / 0
Регистрация: 28.11.2011
Сообщений: 17
19.12.2011, 18:11  [ТС] #8
Цитата Сообщение от Chelioss Посмотреть сообщение
А книги читать не хотите? Думаете во одному вопросу в день на форуме быстрее будет?
Читаю "Самоучитель С++ с задачами и примерами", автор Васильев А.Н.
Но разобраться никак не могу... Пожалуйста, помогите с данной задачей... Впереди зачетная неделя, а оставлять на потом поздно...

Не по теме:

С помощью книги смог решить остальные 6 задач =)

0
Chelioss
180 / 180 / 4
Регистрация: 08.01.2011
Сообщений: 1,133
19.12.2011, 18:51 #9
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
#include <iostream>
#include <ctime>
 
using namespace std;
 
int sum(int *vec, int size)
{
    int j = 0;
    for (int i=0;i<size;i++)
    {
        if (vec[i]>0)
        {
           j++;
        }
    }
    return j;
}
 
int main()
{
    int n = 0;
    srand(time(NULL));
    cout<<"Vvedite razmer massiva: ";
    cin>>n;
    int *vec = new int[n];
    cout<<"Ishodnyi massiv: ";
    for (int i=0;i<n;i++)
    {
        vec[i]=rand()%20-10;
        cout<<vec[i]<<"  ";
    }
    cout<<"\nKolichestvo polojitelnyh: "<<sum(vec,n);
    delete []vec;
    return 0;
}
либо так:
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
#include <iostream>
#include <ctime>
#include <vector>
 
using namespace std;
 
int sum(vector< int > &vec)
{
    int j = 0;
    for (int i=0;i<vec.size();i++)
    {
        if (vec[i]>0)
        {
           j++;
        }
    }
    return j;
}
 
int main()
{
    int n = 0;
    srand(time(NULL));
    cout<<"Vvedite razmer massiva: ";
    cin>>n;
    vector< int > vec(n);
    cout<<"Ishodnyi massiv: ";
    for (int i=0;i<n;i++)
    {
        vec[i]=rand()%20-10;
        cout<<vec[i]<<"  ";
    }
    cout<<"\nKolichestvo polojitelnyh: "<<sum(vec);
    return 0;
}
Второй вариант, конечно, лучше, но надо для этого больше знать.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.12.2011, 18:51
Привет! Вот еще темы с ответами:

Нужно исправить ошибки в программе - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace std; long sum_number (long); int digital_root...

Проверьте игру(нужно исправить ошибки) - C++
#include&lt;iostream&gt; #include&lt;windows.h&gt; using namespace std; int main () { int...

Нужно исправить ошибки в программе конструкторе - C++
#include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; int N=0; template &lt;class vector&gt; class Shkaf { Shkaf odyag; ...

Есть код нужно исправить ошибки - C++
есть задача: ввести размер квадратной матрицы и ее элементы. Элементы матрицы расположить в динамической памяти. Определить номер...


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

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

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