0 / 0 / 0
Регистрация: 09.09.2019
Сообщений: 37
1

ошибка! программа выдает ошибку неинициализированнная переменная s, не понимаю почему

29.10.2019, 22:34. Показов 1234. Ответов 7
Метки нет (Все метки)

доброго времени суток, программа выдает ошибку "использована неинициализированная локальная переменная "s" ". я ее обьявил, не понимаю в чем проблема работаю в visual studio 2019. 36 строка
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <iostream>
#include <string>
#include <cmath>
#include <cstdlib>
#include <ctime>
using namespace std;
int* sozdanie(int l);
void initialize(int* a, int l);
void summa1(int* a, int l);
void summa2(int* a, int l);
int* sozdanie(int l) {
    int* a;
    a = new int[l];
    for (int i = 0; i < l; i++)
    {
        int* a = new int[l];
    }
    return a;
}
void initialize(int* a, int l)
{
    srand(time(0));
    for (int i = 0; i < l; i++)
    {
        a[i] = rand() % 11 - 5;
        cout << a[i] << endl;
    }
}
void summa1(int* a, int l)
{
    setlocale(LC_ALL, "ru");
    int s;
    for (int i = 0; i < l; i++)
    {
        if (i % 2 != 0) {
             s = s + a[i];
        }
 
    }
    cout << "сумма нечетных элемнтов массива=" << s << endl;
}
void summa2(int* a, int l)
{
    setlocale(LC_ALL, "ru");
    float sum = 0.0;
    for (int i = 1; i < l - 1; i++)
    {
        sum = sum + a[i];
    }
    cout << "сумма элементов массива располложенных между первым и последним элемнтом=" << sum << endl;
    cout << "новый массив" << endl;
    for (int i = 0; i < l; i++)
    {
        if (fabs(a[i]) < 1)
 
            a[i] = 0;
        cout << a[i] << endl;
    }
}
int main()
{
    setlocale(LC_ALL, "ru");
    int l(0);
    cout << "Введите кол-во строк в массиве" << endl;
    cin >> l;
    int* a;
    a = sozdanie(l);
    initialize(a, l);
    summa1(a, l);
    summa2(a, l);
    for (int i = 0; i < l; i++)
    {
        delete[] a;
    }
    delete[] a; // Освобождение памяти
    system("pause");
    return 0;
 
 
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.10.2019, 22:34
Ответы с готовыми решениями:

Выдает ошибку не понимаю почему
Помогите Выдает ошибку не понимаю почему именно в строчке где я хочу закрыть форму по нажатию на...

Выдает ошибку, не понимаю почему!
Эта строка подчеркивает красным: if(strcmp(str,&quot;sin&quot;)==0) res=sin(res); #include &lt;iostream&gt;...

Не понимаю почему выдает ошибку
Вам поручено написать систему распределения доступа к файлам. Она должна не пускать пользователя к...

Не понимаю почему выдает ошибку
procedure TForm1.Button1Click(Sender: TObject); var f : textfile; i : integer; begin if...

7
6 / 7 / 2
Регистрация: 22.05.2019
Сообщений: 40
29.10.2019, 22:40 2
Ты зачем сигнатуры/прототипы функций объявил, если функции у тебя находятся перед функцией main()? Убери прототипы/сигнатуры функций.
Код твой работает, компилировал его в MinGW, на твою ошибку не ссылается.
0
0 / 0 / 0
Регистрация: 09.09.2019
Сообщений: 37
29.10.2019, 22:53  [ТС] 3
убрал, но ошибка так и осталась(
0
817 / 504 / 211
Регистрация: 19.01.2019
Сообщений: 1,196
29.10.2019, 22:56 4
Может сделать, что просит компилятор и не страдать фигнёй?
0
фрилансер
4158 / 3567 / 793
Регистрация: 11.10.2019
Сообщений: 9,603
29.10.2019, 22:56 5
Лучший ответ Сообщение было отмечено ilsur73 как решение

Решение

строка 32 же

int s=0;
1
С чаем беда...
Эксперт CЭксперт С++
9988 / 5341 / 1460
Регистрация: 18.10.2014
Сообщений: 12,836
29.10.2019, 22:58 6
Цитата Сообщение от ilsur73 Посмотреть сообщение
программа выдает ошибку "использована неинициализированная локальная переменная "s" ". я ее обьявил, не понимаю в чем проблема

Что значит "не понимаю в чем проблема", если компилятор ясно сказал, что "использована неинициализированная локальная переменная"? Какое слово в "использована неинициализированная локальная переменная" вам не понятно?
1
0 / 0 / 0
Регистрация: 09.09.2019
Сообщений: 37
29.10.2019, 23:09  [ТС] 7
если я создал такую тему значит мне действительно непонятно в чем проблема, необязательно было переспрашивать. к сожалению опыта у меня еще мало, и можно было б просто пояснить ошибку, ведь форум создан именно для этого. спасибо)
0
С чаем беда...
Эксперт CЭксперт С++
9988 / 5341 / 1460
Регистрация: 18.10.2014
Сообщений: 12,836
30.10.2019, 00:00 8
Цитата Сообщение от ilsur73 Посмотреть сообщение
если я создал такую тему значит мне действительно непонятно в чем проблема, необязательно было переспрашивать.
Когда человек задает вопрос вроде "Я написал программу сложения двух чисел, а она пишет что 2+2 равно 4. Что за фигня? Помогите исправить ошибку", то неудивительно, что у окружающих такой вопрос вызывает недоумение и они просят у спрашивающего уточнить, в чем именно заключается его затруднение.

Совершенно аналогичным образом, когда компилятор вам прямо пальцем тыкает в неинициализированную переменную, открытым текстом сообщает, что переменная не инициализирована, а вы все равно спрашиваете "в чем проблема?", у окружающих это вызывает недоумение и они просят у вас уточнить, в чем именно заключается ваше затруднение.

На такой вопрос невозможно ответить без переспрашивания.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.10.2019, 00:00
Помогаю со студенческими работами здесь

Не понимаю почему выдает эту ошибку
Здравствуйте, вот код программы( игра змейка ). Все вроде правильно, но выдает ошибку : main:...

Не понимаю почему программа ошибку на сайте Ulearn
на Visual Studio запускается а на сайте Ulearn Exception on: Geometry.IsVectorInSegment...

Не понимаю почему выдает ошибку "Operator '>' cannot be applied to operands of type 'object' and 'int'"
Здравствуйте. У меня проблема с кодом, не понимаю почему выдает ошибку. private void...

подскажите, почему программа выдает ошибку?
задание примерное такое: на заданном интервале посчитать значение ряда Тейлора с заданным шагом и...

Почему сервер выдаёт ошибку "Необъявленная переменная", если она объявлена
Здравствуйте, я в веб-программировании в целом новичок. Пишу себе сайт. Сервер выдаёт ошибку...

Почему при использовании функции scanf программа выдаёт ошибку?
При использовании команды scanf программа выдаёт ошибку. Printf работает нормально. В чем может...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru