Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.85/26: Рейтинг темы: голосов - 26, средняя оценка - 4.85
2354 / 1772 / 212
Регистрация: 07.01.2011
Сообщений: 10,342
1

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

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

Author24 — интернет-сервис помощи студентам
Всем привет, нуждаюсь в помощи!
Написал прогу, она еще не на 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.04.2012, 23:58
Ответы с готовыми решениями:

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

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

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

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

44
in god we trust
74 / 74 / 8
Регистрация: 20.04.2012
Сообщений: 201
21.04.2012, 20:33 41
Author24 — интернет-сервис помощи студентам
А ну ка запусти вот это
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
2354 / 1772 / 212
Регистрация: 07.01.2011
Сообщений: 10,342
21.04.2012, 20:40  [ТС] 42
л, офигенно, все ок, даже вконце вывело масив с правильним результатом))

Добавлено через 5 минут
я еще буду доделивать прогу, если что то не будет получаться, я отпишу сюда, не забывайте эту тему? хорошо??
пока очень благодарен ))
0
Эксперт С++
8385 / 6147 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
21.04.2012, 20:41 43
как прога зашла туда? если по вашему там бесконечный цикл? интересно, правда
А другие ошибки никто не исключал, учитывая еще небрежное обращение с памятью
C++
1
while ( l->ar[key] != NULL )
Что это вообще за конструкция?
0
2354 / 1772 / 212
Регистрация: 07.01.2011
Сообщений: 10,342
21.04.2012, 20:43  [ТС] 44
Цитата Сообщение от Avazart Посмотреть сообщение
А другие ошибки никто не исключал, учитывая еще небрежное обращение с памятью
C++
1
while ( l->ar[key] != NULL )
Что это вообще за конструкция?
работает до тих пор, пока в масиве, что содержит слово, не будет NULL, т.е. терминальный нуль
0
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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2012, 20:47
Помогаю со студенческими работами здесь

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

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

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

Вывод результата функции
Здравствуйте. Почему функция повторяется 1 раз при присваивание результатов функции: int...


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

Или воспользуйтесь поиском по форуму:
45
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru