Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 0
Регистрация: 17.04.2020
Сообщений: 58
1

Появляется ошибка "Segmentation fault (core dumped)"

23.08.2021, 14:39. Показов 1580. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написал программу, компилируется нормально, но при запуске не появляется вывод работы программы, а вылазит ошибка "Segmentation fault (core dumped)"
Код:
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
#include <iostream>
 
#include <math.h>
 
using namespace std;
 
int main(){
 
setlocale(LC_ALL, "rus");
 
int p = 6, n = 6, index[3];
 
double x[6] = {0.100, 0.108, 0.119, 0.127, 0.135, 0.146};
 
double y[6] = {1.12128, 1.13160, 1.14594, 1.15648, 1.16712, 1.18191};
 
double y1[3];
 
double x1[3] = {0.115, 0.130, 0.164};
 
double s_rr = 0, pr_rr, pr_onrr, s_fn;
 
// Линейная интерполяция
 
for (int i = 0; i < 3; i++){
 
for (int j = 1; j < n; j++)
 
if (x1[i] > x[j - 1] && x1[i] < x[j])
 
index[i] = j;
 
}
 
for (int i = 0; i < 3; i++){
 
y1[i] = ((y[index[i]] - y[index[i] - 1]) / (x[index[i]] - x[index[i] - 1])) * x1[i] + (y[index[i] - 1] - (((y[index[i]] - y[index[i] - 1]) / (x[index[i]] - x[index[i] - 1])) * x[index[i] - 1]));
 
}
 
cout << endl << "значения (Линейная интерполяция):" << endl;
 
for (int i = 0; i < 3; i++)
 
cout << "F(" << x1[i] << ") = " << y1[i] << endl;
 
// Интерполяциооный полином Ньютона
 
y1[0] = 0;
 
y1[1] = 0;
 
y1[2] = 0;
 
for (int l = 0; l < 3; l++)
 
{
 
s_fn = 0;
 
for(int k = 1; k <= n; k++)
 
{
 
pr_onrr = 1;
 
s_rr = 0;
 
for (int i = 0; i <= k; i++)
 
{
 
pr_rr = 1;
 
for (int j = 0; j <= k; j++)
 
if(i != j)
 
pr_rr *= x[i] - x[j];
 
s_rr += y[i] / pr_rr;
 
}
 
for (int i = 0; i < k; i++)
 
{
 
pr_onrr *= x1[l] - x[i];
 
}
 
s_fn += pr_onrr * s_rr;
 
}
 
y1[l] += y[0] + s_fn;
 
}
 
cout << endl << "значения (полином Ньютона):" << endl;
 
for (int i = 0; i < 3; i++)
 
cout << "F(" << x1[i] << ") = " << y1[i] << endl;
 
y1[0] = 0;
 
y1[1] = 0;
 
y1[2] = 0;
 
// Сплайн интерполяция
 
double h[6], l[6], D[5], A[5], c[6], b[6], a[6], d[6];
 
for (int k = 1; k < n; k++){
 
h[k] = x[k] - x[k - 1];
 
l[k] = (y[k] - y[k - 1]) / h[k];
 
}
 
D[1] = (-h[2]) / (2 * (h[1] + h[2]));
 
A[1] = (3*(l[2] - l[1])) / (2 * (h[1] + h[2]));
 
for (int k = 3; k < n; k++){
 
D[k - 1] = h[k] / (2 * h[k - 1] + 2 * h[k] + h[k - 1] * D[k - 2]);
 
A[k - 1] = (3 * l[k] - 3 * l[k - 1] - h[k - 1] * A[k - 2]) / (2 * h[k - 1] + 2 * h[k] + h[k - 1] * D[k - 2]);
 
}
 
c[5] = 0;
 
c[0] = 0;
 
for (int k = n - 1; k >= 2; k--)
 
c[k - 1] = D[k - 1] * c[k] + A[k - 1];
 
x1[0] = 0.702;
 
x1[1] = 0.512;
 
x1[2] = 0.608;
 
for (int k = 1; k < n; k++){
 
b[k] = l[k] + (2/3 * c[k] * h[k]) + (1/3 * h[k] * c[k - 1]);
 
}
 
for (int k = 1; k < n; k++)
 
d[k] = (c[k] - c[k - 1]) / 3 * h[k];
 
for (int i = 0; i < 3; i++)
 
{
 
y1[i] = y[index[i]] + b[index[i]] * (x1[i] - x[index[i]]) + c[index[i]] * pow((x1[i] - x[index[i]]), 2) + d[index[i]] * pow((x1[i] - x[index[i]]), 3);
 
}
 
cout << endl << "значения (сплайн интерполяция):" << endl;
 
for (int i = 0; i < 3; i++)
 
cout << "F(" << x1[i] << ") = " << y1[i] << endl;
 
return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.08.2021, 14:39
Ответы с готовыми решениями:

Ошибка: Segmentation fault (core dumped)
Вот недокод: #include &lt;bits/stdc++.h&gt; using namespace std; int main() { int ans = 0; ...

Ошибка Segmentation fault (core dumped)
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; struct Stud { string...

Ошибка Segmentation fault (core dumped)
Нужно в массивах посчитать сумму положительных элементов в каждом массиве(с помощью функции)....

Segmentation fault (core dumped)
Здравствуйте, написал программу для подсчëта главной диагонали в матрице, а она выдаëт ошибку...

2
Модератор
Эксперт CЭксперт С++
 Аватар для Volga_
5202 / 2919 / 1509
Регистрация: 14.12.2018
Сообщений: 5,261
Записей в блоге: 1
23.08.2021, 16:30 2
Helpplease, оригинал задачи напишите.
0
фрилансер
 Аватар для Алексей1153
5861 / 5400 / 1106
Регистрация: 11.10.2019
Сообщений: 14,432
23.08.2021, 17:01 3
Лучший ответ Сообщение было отмечено Helpplease как решение

Решение

Цитата Сообщение от Helpplease Посмотреть сообщение
double x1[3]
Цитата Сообщение от Helpplease Посмотреть сообщение
int p = 6, n = 6
Цитата Сообщение от Helpplease Посмотреть сообщение
for (int j = 1; j < n; j++)
Цитата Сообщение от Helpplease Посмотреть сообщение
if (x1[i] > x[j - 1] && x1[i] < x[j])
выход за край массива. С y1 то же самое. Тут то ещё только чтение (хотя, это всё равно косяк), а дальше есть и запись

Короче говоря - сделай нормальное форматирование, избавься от магических констант, сделай проверку границ массивов
1
23.08.2021, 17:01
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.08.2021, 17:01
Помогаю со студенческими работами здесь

Segmentation fault (core dumped)
Здравствуйте, не могу понять почему программа не работает #include &lt;iostream&gt; using namespace...

Segmentation fault(core dumped)
#include &lt;iostream&gt; int replace1(char *ptr, char c, char m); int main() { char *ptr =...

Segmentation fault (core dumped)
Добрый вечер. При вводе любых чисел, кроме 0 - й, выводит ошибку. #include &lt;iostream&gt; void...

Segmentation fault (core dumped)
Есть простенькая программа в которой пользователь вводит количество элементов и эти элементы....

Segmentation fault (core dumped)
Здравствуйте, не могу понять где выхожу за границы массива? 1 &lt;= n &lt;= 3 * 10**5 #include...

Segmentation fault (core dumped)
Добрый день. Подскажите, при перемножении матриц более чем 600х600, появляется ошибка Segmentation...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Элементы алгоритмизации
hw_wired 28.01.2025
Основы алгоритмизации В современном мире алгоритмы играют фундаментальную роль в развитии информационных технологий и программирования. Понимание основ алгоритмизации является ключевым элементом в. . .
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO / / https:/ / leetcode. com/ studyplan/ top-interview-150/ package topInterview . . .
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
КуМир: решение геометрических задач
bytestream 28.01.2025
Программирование геометрических задач в среде КуМир становится всё более актуальным в обучении школьников и студентов. КуМир — это разработанная в России обучающая программная среда, предназначенная. . .
КуМир, исполнитель Водолей: Задачи и решения
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения основам программирования и алгоритмизации. Исполнитель Чертежник работает на координатной плоскости, где может. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru