Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.94
zewer
1587 / 1211 / 149
Регистрация: 07.01.2011
Сообщений: 7,758
Завершенные тесты: 1
#1

Вывод результата на экран - C++

20.04.2012, 23:58. Просмотров 2435. Ответов 44
Метки нет (Все метки)

Всем привет, нуждаюсь в помощи!
Написал прогу, она еще не на 100% готова, но при прекопиляции дает ошибку в последних 2 строках кода

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
#include <conio.h>
#include "iostream"
#include "fstream"
using namespace std;
 
struct List
{
    char ar[100];
};
 
void main ()
{
    setlocale (LC_ALL,"Ukrainian");
    List *l;
    int h;
    int key = 0;
    int tmp;
    int m = 37;
    char *ar[37];
    ifstream in("C:\\data.txt",ios::in);
    cout << "\t\t\tХеш-таблиця № 1\n";
 
    while(!in.eof())
    {
        cout << "\n\n";
        l = new List [100];
        in >> l->ar;
        cout << "Зчитане слово: " << l->ar;
        while ( l->ar[key] != NULL )
            key++;
        cout << "\nСлово (ключ) мiстить " << key << " слiв\n";
        h = (7*key)%37;
        cout << "\th(key) = " << h << "\n\n";
        if (ar[h] == NULL)
        {
            ar[h] = l->ar;
            cout << "\tСлово занесено у хеш-таблицю\n";
        }
        else
        {
            cout << "Слово не може бути занесеним у хеш-таблицю, оскiльки виявлено колiзiю\n";
        }
        key = 0;
    }
    in.close();
    for (int i = 0; i < m; i++)           /// сдесь ошибка
        cout << *ar[i];         //// сдесь ошибка
}
помогите правильно виводить масив, в котором в будущем при обработке входной инфы будет результат

Коротко по програме:
Вх данные местяться в data.txt , я их копирую в прогу, работаю с ними, по формуле делаю хеш-таблицу, и в масиве ar[i] будет меститься сама таблица, но при виводе на экран - прога получает crash, помогите пжл)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2012, 23:58
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Вывод результата на экран (C++):

Вывод результата
Как вывести результат этой программы в excel, чтобы , то что было в черном...

Вывод результата
решил такую задачу, мозг кипит, потому прошу: РАЗЪЯСНИТЕ как вывести ответ не...

Вывод результата
Прошу совета. Сперва думал, что где-то в коде ошибка, но потом создал...

Вывод дробного результата
как сделать так,чтобы если получается дробный результат он и выводился,а не...

не правильный вывод результата
Доброго времени суток! Возникла проблема мне нужно чтобы программа проверяла,...

Неправильный вывод результата
Всем Доброго времени суток, извините за такое название темы, другого не...

44
Xavier
in god we trust
74 / 74 / 8
Регистрация: 20.04.2012
Сообщений: 201
21.04.2012, 20:33 #41
А ну ка запусти вот это
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
#include <conio.h>
#include <iostream>
#include <fstream>
using namespace std;
 
struct List
{
    char ar[100];
};
 
int main ()
{
    setlocale (LC_ALL,"Ukrainian");
    List *l;
    int h,i=0;
    int key = 0;
    int tmp;
    int m = 37;
    char *ar[37];
    l = new List [100];
    for (int j=0;j<37;j++) { ar[j]=new char[37]; ar[j]="";  }
 
    ifstream in("C:\\data.txt",ios::in | ios::binary);
    cout << "\t\t\tХеш-таблиця № 1\n";
 
    while(!in.eof())
    {
        cout << "\n\n";
 
        in >> l[i].ar;
        cout << "Зчитане слово: " << l[i].ar;
        while ( l[i].ar[key] != NULL )
            key++;
        cout << "\nСлово (ключ) мiстить " << key << " слiв\n";
        h = (7*key)%37;
        cout << "\th(key) = " << h << "\n\n";
        if (ar[i] == "")
        {
 
            ar[h] = l[i].ar;
            cout << "\tСлово занесено у хеш-таблицю\n";
 
 
 
        }
        else
        {
            cout << "Слово не може бути занесеним у хеш-таблицю, оскiльки виявлено колiзiю\n";
        }
        key = 0; i++;
    }
 
    in.close();
    for ( i = 0; i < m; i++)
        cout << ar[i];
}
Добавлено через 2 минуты
Если это заработает то сам алгоритм я не трогал но ошибки в мелочах(типа на что указывает указатель) сыграли свою роль
0
zewer
1587 / 1211 / 149
Регистрация: 07.01.2011
Сообщений: 7,758
Завершенные тесты: 1
21.04.2012, 20:40  [ТС] #42
л, офигенно, все ок, даже вконце вывело масив с правильним результатом))

Добавлено через 5 минут
я еще буду доделивать прогу, если что то не будет получаться, я отпишу сюда, не забывайте эту тему? хорошо??
пока очень благодарен ))
0
Avazart
Эксперт С++
7678 / 5587 / 543
Регистрация: 10.12.2010
Сообщений: 25,067
Записей в блоге: 17
21.04.2012, 20:41 #43
как прога зашла туда? если по вашему там бесконечный цикл? интересно, правда
А другие ошибки никто не исключал, учитывая еще небрежное обращение с памятью
C++
1
while ( l->ar[key] != NULL )
Что это вообще за конструкция?
0
zewer
1587 / 1211 / 149
Регистрация: 07.01.2011
Сообщений: 7,758
Завершенные тесты: 1
21.04.2012, 20:43  [ТС] #44
Цитата Сообщение от Avazart Посмотреть сообщение
А другие ошибки никто не исключал, учитывая еще небрежное обращение с памятью
C++
1
while ( l->ar[key] != NULL )
Что это вообще за конструкция?
работает до тих пор, пока в масиве, что содержит слово, не будет NULL, т.е. терминальный нуль
0
Xavier
in god we trust
74 / 74 / 8
Регистрация: 20.04.2012
Сообщений: 201
21.04.2012, 20:47 #45
Цитата Сообщение от zewer Посмотреть сообщение
я еще буду доделивать прогу, если что то не будет получаться, я отпишу сюда, не забывайте эту тему?
можешь в скайп обращаться если что нибудь надо будет
alexandr3367
потому что специально в эту тему я смотреть вряд ли буду так как их тут очень много)))
0
21.04.2012, 20:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2012, 20:47
Привет! Вот еще темы с решениями:

некорректный вывод результата
Суть программы: Пользователь вводит число (например 4), программа печатаем...

Вывод результата поиска
Программа считывает из файла данные, потом осуществляет поиск по Id - номеру и...

Корректный вывод результата
Здравствуйте, нужна помощь в корректном(красивый, в данном случае) выводе...

Кривой вывод результата
Доброго времени суток. Сейчас пишу в Xcode (последняя версия) на MacOs. ...


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

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

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