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

STL - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Декодировать Base32 http://www.cyberforum.ru/cpp-beginners/thread274031.html
Есть строка char из 39 символов в base32. Каждый символ хранится в 8-ми битной ячейке char'а, но имеет всего 32 комбинации, т.е. занимает из них всего 5 бит. Пример строки: RGIOANCKDO575W36YJUXC2P6QI4PESWIOPDDYTA Вот таблица base32: 0 - 00000 - 0 1 - 00001 - 1 2 - 00010 - 2 3 - 00011 - 3 4 - 00100 - 4 5 - 00101 - 5 6 - 00110 - 6 7 - 00111 - 7
C++ А можно ли чтобы ответ в задании выводился, на русском? а то у меня иероглифы пишет Подскажите может нужно подключить что то? мне нужно ввести с клавиатуры на русском и чтоб ответ тоже выводился на Русском языке :) http://www.cyberforum.ru/cpp-beginners/thread274030.html
C++ Работа с графикой
#include "graphics.h" #include <math.h> #include <stdio.h> #include <time.h> #include <stdlib.h> int main (void) { int x,y,c,k,q,z,w,e,r,t,u,s,b,n; int driver= DETECT, mode=0; initgraph(&driver,&mode,"");
C++ определить количество слов в тексте, оканчивающихся на гласную букву
И еще одна программа ... ((( можно ли переделать под условие (смотри пр файл.) Задание: С помощью текстового редактора создать файл, содержащий текст, длина которого не превышает 1000 символов (длина строки текста не должна превышать 70 символов). Имя файла должно иметь расширение DAT. Написать программу, которая: 1) выводит текст на экран дисплея; 2) определяет количество слов в...
C++ Как связаны собственные значения и векторы матриц А и А^5? http://www.cyberforum.ru/cpp-beginners/thread273991.html
помогите пожалуйста решить вот такую задачу(очень срочно надо):как связаны собственные значения и векторы матриц А и А^5 ?
C++ Найти сумму элементов массива с нечетными номерами Просьба помочь/дописать программу под условие задания (смотреть пр. файл) :(( Задание: H - сумма элементов массива с нечетными номерами E - максимальный по модулю элемент массива G - Количество отрицательных элементов массива (H+E/(H+1))*G подробнее

Показать сообщение отдельно
lemegeton
2918 / 1347 / 134
Регистрация: 29.11.2010
Сообщений: 2,721
14.04.2011, 00:12     STL
Quick & (very) dirty.

В файле по заданию три поля, разделенные пробелом. Владелец, вид животного, кличка.

data.txt:
Код
John Dog Mary
John Cat Susy
Jane Dog Sunny
Piter Cat Silvi
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
#include <iostream>
#include <fstream>
#include <iterator>
#include <vector>
#include <algorithm>
#include <map>
#include <set>
 
typedef std::map<std::string, std::string> TableRow;
typedef std::vector<TableRow> Table;
 
void PrintRow(TableRow row) {
  std::cout << row["owner"] << " " << row["pet"] << " "
            << row["nick"] << std::endl;
};
 
int main(int argc, char *argv[]) {
  Table table;
  std::back_insert_iterator<Table> inserter(table);
 
  std::ifstream source_file("data.txt");
  while (source_file.good()) {
    TableRow row;
    source_file >> row["owner"] >> row["pet"] >> row["nick"];
    if (!source_file.eof()) inserter++ = row;
  }
 
  std::for_each(table.begin(), table.end(), PrintRow);
 
  std::map<std::string, std::map<std::string, int> > owners;
  for (Table::iterator i = table.begin(); i < table.end(); ++i)
    ++(owners[(*i)["owner"]][(*i)["pet"]]);
 
  for (std::map<std::string, std::map<std::string, int> >::iterator i =
       owners.begin(); i != owners.end(); ++i) {
    std::cout << (*i).first << ": " << std::endl;
    for (std::map<std::string, int>::iterator j = i->second.begin();
         j != i->second.end(); ++j)
      std::cout << (*j).first << " = " << (*j).second << std::endl;
  }
 
  std::map<std::string, std::map<std::string, int> > pets;
  for (Table::iterator i = table.begin(); i < table.end(); ++i) {
    ++(pets[(*i)["pet"]]["owners"]);
    ++(pets[(*i)["pet"]]["nicks"]);
  }
 
  for (std::map<std::string, std::map<std::string, int> >::iterator i =
       pets.begin(); i != pets.end(); ++i) {
    std::cout << i->first << ": owners = " << i->second["owners"]
              << ", nicks = " << i->second["nicks"] << std::endl;
  }
 
  std::map<std::string, std::set<std::string> > pet_owners;
  for (Table::iterator i = table.begin(); i < table.end(); ++i)
    pet_owners[(*i)["pet"]].insert((*i)["owner"]);
 
  for (std::map<std::string, std::set<std::string> >::iterator i =
       pet_owners.begin(); i != pet_owners.end(); ++i) {
    std::cout << i->first << ": ";
    for (std::set<std::string>::iterator j = i->second.begin(); j != i->second.end(); ++j)
      std::cout << *j << " ";
    std::cout << std::endl;
  }
 
  return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru