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

Segmentation fault - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Объяснить работу программы http://www.cyberforum.ru/cpp-beginners/thread1196167.html
Здравствуйте. Такая задача была: Задача 2. Дано натуральное число. Определить, является ли число палиндромом, т.е. читается одинаково слева направо и справа налево. Массивы и строки не использовать. Нашёл на форуме подходящую рабочую программу, но не могу полностью понять (и объяснить), как она работает. Вроде в цикле с предусловием аналоги mod/div, а в цикле с параметром что - не понятно....
C++ Вывод двумерного массива Нужно сделать вывод как на картинке. я пробовал но у меня возникли некоторые сложности for(int i = 0; i<26; ++i) { for ( int j=0; j<26; ++j) { int sdvig = i+j; http://www.cyberforum.ru/cpp-beginners/thread1196164.html
Организовать класс треугольник, определенный по координатам вершин и содержащий конструктор, деструктор C++
помогите пожалуйста исправить лабораторную, так как треугольник задан векторами, в нем надо убрать переменные Р h и Dlina и сделать функции возвращающими, задание гласит:Организовать класс треугольник, определенный по координатам вершин и содержащий конструктор, деструктор, функции нахождения длин сторон, периметра, и высоты на большую сторону. Исходный код: #include <iostream> #include...
Ввести одномерный массив из n элементов. Определить число различных элементов в нем C++
Возникла небольшая проблема. Нужно сделать элементарное задание, но чтобы было несколько функций пользователя. Задание: Ввести одномерный массив из n элементов. Определить число различных элементов в нем. #include "iostream" #include "conio.h" using namespace std; void mass (int *i) { int j, A; j=0; while (j<*i)
C++ Описание функции getopt http://www.cyberforum.ru/cpp-beginners/thread1196108.html
Распишите описание функции getopt и её использование с ключами.
C++ Ошибка при компиляции Unresolved external Доброго времени суток. У меня в программе есть клас Masiv, объявленный с идентификатором extern. Далее я в одной из функцый его иницыализирую и исползую, а потом в и других функцыях исползую. Сам клас описан в другом файле и подинкуденый к в той, где я его исползую. При компиляции выдает ошибку Error: Unresolved external '_Masiv'. Не понимаю где ошибка, файл где описан класс подключен, нет... подробнее

Показать сообщение отдельно
Kaster
0 / 0 / 0
Регистрация: 02.06.2014
Сообщений: 9
15.06.2014, 17:35  [ТС]     Segmentation fault
Цитата Сообщение от dzrkot Посмотреть сообщение
используйте объекты ifstream/ofstream/fstream , методы read и write
- Спасибо, это оказалось очень полезно.
Цитата Сообщение от alsav22 Посмотреть сообщение
fscanf() - это чтение из файла.
- Долго краснел из-за этого.

Конечный код (если интересно):
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <stdio.h>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <fstream>
#include <cmath>
 
using namespace std;
 
int main()
{
    ifstream read;
    ofstream write;
    struct L
    {
        char n[30];
        float w;
        float c;
        float p;
        float f;
        float ch;
    } *spis;
    int ln,l,k,m,com,d,ffat;
    unsigned j;
    char **B,**C,*p,fats[10];
    printf("||Программу составил студент группы РИ-130501\n||Доронин Всеволод\n");     //Заставка
    printf("\n\tДанная программа записывает сведения о продуктах\n\tи организовывает выбор продуктов с содержанием\n\tжиров менее заданного значения.\n");     //Описание
    printf("\nВведите число продуктов: ");     //Задание размера массива
    scanf("%i",&ln);
    spis=new L[ln];
    printf("\nВводите сведения о продуктах:\n");     //Приглашение
    for(l=0 ; l<ln ; l++)
    {
        printf("\nНазвание %i-го: ",l+1);
        scanf("%s",spis[l].n);
        printf("Вес одного стакана: ");
        scanf("%f",&spis[l].w);
        printf("Калорийность: ");
        scanf("%f",&spis[l].c);
        printf("Белки: ");
        scanf("%f",&spis[l].p);
        printf("Жиры: ");
        scanf("%f",&spis[l].f);
        printf("Углеводы: ");
        scanf("%f",&spis[l].ch);
    }
    write.open("diet.txt");
    for(l=0 ; l<ln ; l++)
    {
        write<<"Название: "<<spis[l].n<<"; ";
        write<<"Вес стакана: "<<spis[l].w<<"; ";
        write<<"Калорийность: "<<spis[l].c<<"; ";
        write<<"Белки: "<<spis[l].p<<"; ";
        write<<"Жиры: "<<spis[l].f<<"; ";
        write<<"Углеводы: "<<spis[l].ch<<endl;
    }
    write.close();
    delete [] spis;
    B=new char*[ln];
    C=new char*[ln];
    printf("\nЗадайте пороговое содержание жиров. Оно должно быть\nбольше хотя бы одного из описанных: ");
    scanf("%s",fats);
    cout<<endl;
    for(ffat=0 , j=0 , m=strlen(fats)-1 ; j!=strlen(fats) && m>=0 ; j++ , m--)
    {
        d=(float)fats[j]*pow(10,m);
        ffat+=d;
    }
    read.open("diet.txt");
    for(l=0 ; l<ln ; l++)
    {
        B[l]=new char[100];
        C[l]=new char[100];
        read.getline(B[l] , 100);
        strcpy(C[l] , B[l]);
        p=strtok(B[l] , "; ");
        k=0;
        while(p!=NULL)
        {
            k++;
            p=strtok(NULL , "; ");
            com=0;
            if(k==10)
            {
                for(d=0 , j=0 , m=strlen(p)-1 ; j!=strlen(p) && m>=0 ; j++ , m--)
                {
                    d=(float)p[j]*pow(10,m);
                    com+=d;
                }
                if(com<ffat)
                {
                    cout<<C[l]<<endl;
                }
            }
        }
    }
    read.close();
    printf("\nНажмите ENTER для выхода.");
}
 
Текущее время: 00:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru