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

не работает на большом количестве - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ вопрос по шаблонам http://www.cyberforum.ru/cpp-beginners/thread59062.html
начал разбираться в шаблонах и что то не получается вот код без шаблона все работает #include<iostream> #include<string> #include<vector> using namespace std;
C++ Упорядочить элементы массива с четными индексами в порядке возрастания Задан массив, содержащий N элементов. Упорядочить его элементы с четными индексами в порядке возрастания, а элементы с нечетными индексами в порядке убывания , помогите написать эту программу , если не сложно реализуйте на с++ Добавлено через 13 минут очень прошу помочь , буду весьма благодарен http://www.cyberforum.ru/cpp-beginners/thread59061.html
C++ Найти сумму кодов всех элементов символьного массива
Привет! не могу никак добить прогу суть такая: Написать функцию, которая для заданного в качестве параметра массива типа char возвращает сумму кодов всех его элементов и заменяет все вхождения символа "#" на букву А и подсчитывает количество символов "#". Буду благодарен. #include "stdafx.h" #include <iostream.h> int s,i; void a(char m1) {
Никак не разберусь с практической в С++. C++
НАрод помогите пожалуста с практической. НЕ могу решить, а очень нада срочно. ЗАДАНИЕ Составить программу для сохранения и обработки информации Которая включает разные типы данных: Номер і зміст даних: 1)ФИо 2)Номер школы 3)Класс 4)Средний балл аттестата 5)Любимый предмет 6)Нелюбимый предмет Заранее спасибо за помощь.
C++ Найти среднее арифметическое http://www.cyberforum.ru/cpp-beginners/thread59039.html
Помогите решить задачу на С++ Дана вещественная таблица а . Найти среднее арифметическое положительных элементов таблицы и минимум абсолютного значения элементов. Найти их произведение.
C++ Вывод массива Помогите пожалуйста написать программу которая выводит массив на ввиде k столбцов и оканчивается на n числе, заранее спасибо подробнее

Показать сообщение отдельно
Maqvaer
3 / 3 / 0
Регистрация: 23.10.2009
Сообщений: 25

не работает на большом количестве - C++

26.10.2009, 16:45. Просмотров 441. Ответов 4
Метки (Все метки)

здравствуйте!
Программа сравнивает наличие строки из файла "наречия.txt" в файле "словарь.txt". Причем в "наречия.txt" слова представлены в виде строк :
Код
информаш
информгаз,
а в файле "словарь.txt" слдующим образом:
Код
информаш 2805 61 36 Фг - 29
информгаз 36 27 397 Уэ -
Когда оба файла весят порядка 2ух КБ, прогрмма отлично работает. Надо, чтоб работала на 158 КБ файла "наречия.txt" и почти 5000 КБ файла "словарь.txt"(в результирующем файле при большом количестве данных записываются только знаки "+", а надо "+ и найденное слово"). Помогите, пожалуйста!

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
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
 
 
int main(void)
 
{
 
FILE *file_from;
FILE *file_in;
FILE *file_to;
 
char* file_words = "наречия.txt";
char* file_vocab = "словарь.txt";
char* file_word_in_vocab = "слова_в_словаре.txt";
 
if(!(file_from = fopen( file_words, "r" )))//файл где слова для сверки(наречия)
{
    printf("File %s not found\n", file_words);
    return 0;
}
if(!(file_to=fopen(file_word_in_vocab, "w"))) //файл с результатом работы
    {
        printf("File %s not found\n", file_word_in_vocab);
        return 0;
    }
 
char word[23];
char word_name[23];
 
while(fgets (word,sizeof word, file_from))
{
 
int c=0;
char w[23]="";
 
while(word[c])
{
if (word[c]=='\n') w[c]-='\0';
else w[c]=word[c];
c++;
 
}
 
if(!(file_in=fopen(file_vocab,"r"))) //файл словаря
{
    printf("File %s not found\n", file_vocab);
    return 0;
}
 
while(fgets (word_name,sizeof word_name, file_in))
 {
int i=0;
char temp[23]= "";
 
while(word_name[i]!=' ')
{
    if (word_name[i]=='\n') temp[i]=word_name[i];
    else temp[i] = word_name[i];
    i++;
}
 
if (strcmp(w,temp)==0)
{
    fputs("+", file_to);
    fputs(w, file_to);
    fputs("\n", file_to);
 
}
}
fclose(file_in);
}
fclose( file_to);
fclose( file_from);
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru