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

Нужно поправить код - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ в файле t.txt находится массив http://www.cyberforum.ru/cpp-beginners/thread893123.html
в файле t.txt находится массив. написать функцию, которая которая переставляет первые три и последние три элемента, сохраняя их порядок Добавлено через 17 секунд срочно надо!!!!!
C++ Создание bmp файла Как создать новый bmp файл 8 бит, например 50*50 пикселей? http://www.cyberforum.ru/cpp-beginners/thread893120.html
Нужно написать программу на языке С++. Я даже не представляю с чего начать C++
Проверить правдоподобность заданной простой программы. Простая программа содержит раздел описания переменных, оператор присваивания, составной оператор, короткий условный оператор. Простая программа называется правдоподобной, если выполнены следующие условия: а) каждая из переменных, встречающихся в последовательности операторов тела программы, описана, т.е. встречается в списке переменных...
Ввести два вектора целых чисел и образовать третий вектор с их общих элементов C++
Ввести два вектора целых чисел и образовать третий вектор с их общих элементов (без повторений наченное выбранных элементов). Смофромавий вектор вывезти на экран, или вывести сообщение об отсутствии различных элементов
C++ Не правильно складываеться в масив. ТОлько не пишите ответ кодом ,а скажите в чем там ошибка http://www.cyberforum.ru/cpp-beginners/thread893094.html
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include<conio.h> #include<iostream.h> #include<stdlib.h> #include <iomanip.h> //setw(); //---------------------------------------------------------------------------
C++ Сжатие данных методом Лемпеля-Зива-Велча. Почему некоторые файлы увеличиваются в размере? Здравствуйте. Подскажите, пожалуйста, почему файлы с расширениями (mp3, djvu, pdf, avi) при использовании LZW-метода сжатия, только лишь увеличиваются в размере? Изображения и текстовые файлы сжимаются (в большинстве случаев). подробнее

Показать сообщение отдельно
StormSpirit
6 / 6 / 2
Регистрация: 13.02.2013
Сообщений: 32
06.06.2013, 18:45
Не въехал как Вы работаете с файлом, переписал процедуру. Вот рабочий вариант, правда, он сыроват и имеет ряд недостатков...
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
#include <iostream>
#include <fstream>
#include <map>
#include <inttypes.h>
 
using namespace std;
/*
struct map{
    char *region;
    int id;
    char *sosedi[100];
    char *color;
    char *colorS[100];
    char *tmp;
    char *key;
};
*/
struct string_map{
    string region;
    int id;
    string sosedi[100];
    char *color;
    char *colorS[100];
    char *tmp;
    string key;
};
 
void display_map(string_map* some)
{
  for (int i=0; i<26; i++)
  {
    if (some[i].key != "") cout << some[i].key << endl;
    int j=0;
    while (some[i].sosedi[j] != "")
    {
      cout << "\t" << some[i].sosedi[j] << endl;
      j++;
    }
        
  }
}
 
    
    // key - oblast' value - id
map<string, uint16_t> oblast_id;
map<string, uint16_t>::iterator oblast_id_iter;
 
int main()
{
  string_map some[26];
  
  ifstream some_file ("sosedi.txt");
  string line;
  string sosed;
  int oblast_counter=0;
  while ( some_file.good() )
  {
    getline (some_file,line);
    unsigned pos = line.find(" ");
    sosed = line.substr(pos+1);
    line = line.substr(0,pos-1);
    oblast_id_iter = oblast_id.find(line);
    if (oblast_id_iter == oblast_id.end())
    {
      oblast_id[line] = oblast_counter;
      oblast_counter++;
    }
 
    oblast_id_iter = oblast_id.find(line);
    some[oblast_id_iter->second].key = line;
    for (int i=0; i<100; i++)
    {
      if (some[oblast_id_iter->second].sosedi[i] == "")
      {
        some[oblast_id_iter->second].sosedi[i] = sosed;
    break;
      }
    }
    
  }
 
  some_file.close();
 
  display_map(some);
}
Будут вопросы - спрашивайте.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru