С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93

подскажите пожалуйста в чем ошибка)

10.12.2013, 17:23. Показов 918. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
при написании программы вылезла ошибка "...Возможно, вы забыли добавить директиву "#include "stdafx.h"" в источник" - добавил #include "stdafx.h" вылезло еще куча ошибок. в чем дело, подскажите?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
10.12.2013, 17:23
Ответы с готовыми решениями:

Подскажите пожалуйста в чём ошибка
Написала программу. Задание звучит так: Заполнить массив похожим на верхний образом, но только уже по столбцам 0 1 2 3 0...

Подскажите в чем ошибка, пожалуйста
#include <iostream> #include <conio.h> using std::cout; using std::cin; using std::endl; int plus(int,int); int...

Ошибка "Stack around the variable 'text' was corrupted"
Выскакивает ошибка Stack around the voriable 'text' was corrupted. Подскажите пожалуйста в чём ошибка. #include <iostream> ...

13
 Аватар для Aloir
225 / 225 / 38
Регистрация: 17.12.2010
Сообщений: 713
10.12.2013, 17:29
наверное в ошибках!!!!

C++
1
#include "stdafx.h"
вставляете самым первым инклудом, а потом исправляете ошибки, что за ним вылезли

увы, астральный шар и бубен изьяла милиция, не могу теперь сказать точно, что там...
1
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93
10.12.2013, 17:35  [ТС]
помогите пожалуйста как исправить ошибки:
#include <stdafx.h>
#include <stdio.h>



int main(void)
{
static const char filename[] = "file.txt";
FILE * file = fopen ("C:\\file.txt", "r");
int i = 0;
if(file !=NULL)
{
char line[128]; //max size of vector;
int y[128];
int x[128];

while(fgets(line, sizeof line, file) != NULL )
{
sscanf(line,"%d ; %d", &x[i], &y[i]);
printf("x = %d ; y = %d\n", x[i],y[i]);
i++;
}
}
fclose(file);

int xy[128];
int x2[128];
int x_summ, y_summ, xy_summ,x2_summ = 0;
for (int n = 0; n < i /*i+1*/ ; n++)
{

xy[n] = x[n]*y[n];
x2[n] = x[n]*x[n];
x_summ+=x[n];
y_summ+=y[n];
xy_summ+=xy[n];
x2_summ+=x2[n];
}
double a = (i*xy_summ - x_summ*y_summ)/(i*x2_summ - x2_summ);
double b = (y_summ - a*x_summ)/i;

fprintf("y = %f x+%f\n", a,b);
return 0;
}


вот этот код выполняет такую функцию:программа запрашивает имя файла, в этом файле в два столбца записаны значения функции y=f(x); ( значения х и значения у через ";"), мне требуется считать все значения, которые из файла, построить линию тренда ( уравнение прямой , которые наиболее близко располагаются к этим точкам (у=kx+b) (метод наименьших квадратов)

Добавлено через 34 секунды
а то я попытался исправить, так их еще больше стало...
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
10.12.2013, 17:39
....
0
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93
10.12.2013, 17:40  [ТС]
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
#include <stdafx.h>
#include <stdio.h>
 
 
 
int main(void)
{
    static const char filename[] = "file.txt";
    FILE * file = fopen ("C:\\file.txt", "r");
    int i = 0;
    if(file !=NULL)
    {
        char line[128]; //max size of vector;
        int y[128];
        int x[128];
       
        while(fgets(line, sizeof line, file) != NULL )
        {
            sscanf(line,"%d ; %d", &x[i], &y[i]);
            printf("x = %d ; y = %d\n", x[i],y[i]);
            i++;
        }
    }
    fclose(file);
 
    int xy[128];
    int x2[128];
    int x_summ, y_summ, xy_summ,x2_summ = 0;
    for (int n = 0; n < i /*i+1*/ ; n++)
    {
       
        xy[n] = x[n]*y[n];
        x2[n] = x[n]*x[n];
        x_summ+=x[n];
        y_summ+=y[n];
        xy_summ+=xy[n];
        x2_summ+=x2[n];
    }
    double a = (i*xy_summ - x_summ*y_summ)/(i*x2_summ - x2_summ);
    double b = (y_summ - a*x_summ)/i;
 
    fprintf("y = %f x+%f\n", a,b);
    return 0;
}
0
 Аватар для lpvoid
324 / 307 / 59
Регистрация: 06.03.2013
Сообщений: 869
10.12.2013, 17:42
Ms Proger,

Не по теме:

удивительно как люди умудряются писать на плюсах как на си. чем вас std::*fstream не устроили?

0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
10.12.2013, 17:50
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
#include <stdio.h>
 
#define MAX_SIZE 128
 
int main(void)
{
    FILE *fd = NULL;
    const char filename[] = "file.txt";
 
 
    if ((fd = fopen ("C:\\file.txt", "r")) != NULL);
    {
        printf("can not open file\n");
        return 1;
    }
 
    int y[MAX_SIZE]= {0};
    int x[MAX_SIZE] = {0};
    char line[MAX_SIZE] = {0};
 
    int count = 0;
    for (; fgets(line, MAX_SIZE, fd); ++count)
    {
        sscanf(line, "%d ; %d", &x[count], &y[count]);
        printf("x = %d ; y = %d\n", x[count], y[count]);
    }
 
    fclose(fd);
 
    int x_summ = 0, y_summ = 0, xy_summ = 0, x2_summ = 0;
    for (int i = 0; i < count; ++i)
    {
        x_summ += x[i];
        y_summ += y[i];
 
        xy_summ += x[i] * y[i];
        x2_summ += x[i] * x[i];
    }
 
    double a = (count * xy_summ - x_summ * y_summ) / (count * x2_summ - x2_summ);
    double b = (y_summ - a * x_summ) / count;
 
    printf("y = %fx + %f\n", a, b);
    return 0;
}
0
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93
10.12.2013, 18:02  [ТС]
Цитата Сообщение от lpvoid Посмотреть сообщение
Не по теме:
удивительно как люди умудряются писать на плюсах как на си. чем вас std::*fstream не устроили?
простите, я вас не понял

Добавлено через 1 минуту
Цитата Сообщение от stima Посмотреть сообщение
Код C++
скажите, что вы изменили в моём коде (какие ошибки у меня были)? и при запуске компиллятора выплывает консолька с текстом "cannot open fie" что это значит?
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
10.12.2013, 18:05
Это значит что кто-то невнимательный).

Исправленно
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
#include <stdio.h>
 
#define MAX_SIZE 128
 
int main(void)
{
    FILE *fd = NULL;
    const char filename[] = "file.txt";
 
 
    if ((fd = fopen ("C:\\file.txt", "r")) == NULL);
    {
        printf("can not open file\n");
        return 1;
    }
 
    int y[MAX_SIZE]= {0};
    int x[MAX_SIZE] = {0};
    char line[MAX_SIZE] = {0};
 
    int count = 0;
    for (; fgets(line, MAX_SIZE, fd); ++count)
    {
        sscanf(line, "%d ; %d", &x[count], &y[count]);
        printf("x = %d ; y = %d\n", x[count], y[count]);
    }
 
    fclose(fd);
 
    int x_summ = 0, y_summ = 0, xy_summ = 0, x2_summ = 0;
    for (int i = 0; i < count; ++i)
    {
        x_summ += x[i];
        y_summ += y[i];
 
        xy_summ += x[i] * y[i];
        x2_summ += x[i] * x[i];
    }
 
    double a = (count * xy_summ - x_summ * y_summ) / (count * x2_summ - x2_summ);
    double b = (y_summ - a * x_summ) / count;
 
    printf("y = %fx + %f\n", a, b);
    return 0;
}
0
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93
10.12.2013, 18:29  [ТС]
а все, увидел это в printf (cannot open file)... но почему же тогда в консольке нельзя больше делать никаких дальнейших действий? (простите меня что задаю такие глупые вопросы) я просто программирование с нуля учу)

Добавлено через 14 минут
может нужно что-то с файлом проработать?
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
10.12.2013, 18:38
Я добавил коментарии
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
#include <stdio.h>
 
#define MAX_SIZE 128
 
int main(void)
{
    FILE *fd = NULL;
    const char filename[] = "C:\\file.txt";  //полынй путь к файлу который мы будем открывать
 
    if ((fd = fopen (filename, "r")) == NULL); //елси fopen вернет NULL, то
    {
        printf("can not open file\n"); //выведем сообщение
        return 1; //выйдем из программы
    }
 
    //файл удачно открыт
 
    int y[MAX_SIZE]= {0};
    int x[MAX_SIZE] = {0};
    char line[MAX_SIZE] = {0};
 
    int count = 0;
    for (; fgets(line, MAX_SIZE, fd); ++count) //считываем с файла размером MAX_SIZE
    {
        sscanf(line, "%d ; %d", &x[count], &y[count]);   //парсим строку по нужному паттерну
        printf("x = %d ; y = %d\n", x[count], y[count]);  //выводим то что мы получили
    }
    //прочитали все
 
    fclose(fd); //закрыли файл
 
    int x_summ = 0, y_summ = 0, xy_summ = 0, x2_summ = 0;
    for (int i = 0; i < count; ++i) //начали суммировать по количеству прочитанных данных
    {
        x_summ += x[i];
        y_summ += y[i];
 
        xy_summ += x[i] * y[i];
        x2_summ += x[i] * x[i];
    }
 
    double a = (count * xy_summ - x_summ * y_summ) / (count * x2_summ - x2_summ); 
    double b = (y_summ - a * x_summ) / count;
 
    printf("y = %fx + %f\n", a, b); //вывли нужные нам данные
    return 0; //вышли
}
0
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93
10.12.2013, 19:15  [ТС]
в каких случаях fopen ворачивает null?
0
503 / 352 / 94
Регистрация: 22.03.2011
Сообщений: 1,112
10.12.2013, 19:19
В каких ворачивает я не знаю, а возвращает - если не удалось открыть файл.

п.с. Вам пора начать хоть немного искать информацию самомоу.
0
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 93
10.12.2013, 19:23  [ТС]
спасибо большое)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.12.2013, 19:23
Помогаю со студенческими работами здесь

Подскажите пожалуйста: в чем ошибка(Оператор if)
Здравствуйте, подскажите пожалуйста: в чем ошибка(Оператор if)? #include&lt;iostream&gt; #include&lt;string&gt; using namespace std; ...

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

Пожалуйста, подскажите в чем у меня ошибка?
У меня вот такая задача: &quot;Дана символьная матрица размера 4 х 5. Из последовательности её строк сформировать новую строку и определить ее...

Подскажите пожалуйста в чем ошибка?(С++,структуры,стек)
Подскажите пожалуйста, в чем ошибка При считывании из файла единственной записи 5группа &quot;Anokhin Viktor petrovich 4 5...

Подскажите пожалуйста, я тут новенький в чем ошибка?
&quot;int main (void){int х, *р; х = 10; *р = х;return 0;}&quot; Я долгое время не как не пойму... У казатель &quot;р&quot; не получает адреса, как мне...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru