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

Азбука Морзе - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Чтение текстового файла http://www.cyberforum.ru/cpp-beginners/thread788265.html
здравствуйте. у меня не получается считать текстовый файл. сам файл имеет имеет жесткую структуру: первая строка число(по сути колличество записей), дальше приходится по 5 строчек на одну запись. Основная проблема в том, что чтение выполняется некорректно(см. пример файла и скрин). вот пример файла(коменты я поставил для понимания структуры файла, в оригинале они отсутствуют): 2 //...
C++ Реализовать очередь на одномерном массиве Программа должна позволять многократно выполнять операции над очередью. При выполнении функции input переменная last увеличивается на единицу, но после завершения функции и продолжении цикла снова становится исходным значением, то есть единицей. Почему так? #include <stdio.h> int input(int last, float queue); //функция которая будет добавлять в очередь элемент int insert(int first,float... http://www.cyberforum.ru/cpp-beginners/thread788256.html
Пожалуйста объясните Что означает каждая строчка C++
Что означает каждая строчка, объясните кому не трудно, а то ничего не понятно: 1) char *s = new char ; cout<<"Vvedite slovo"<<endl; cin >> s; for (i = 0; i < n-3; i++) { for (j = 0; j < 4; j++) if (s != (char)((int)('a')+j)) break; if (j == 4) {
C++ Как использовать свойство DataSet->CaseSensitive ?
это для смены регистра, т.е различать строчные и заглавные буквы или нет? моя задача такова открываю файл, в файле произвольный текст,необходимо построить частотный словарь. если выбран переключатель то все слова будут с маленькой буквы иначе как в исходном тексте. Например в файле были слова Hello и hello без переключателя выдаст 2 разных слова, с ним же одно слово hello. Добавлено через 4...
C++ Объясните программу http://www.cyberforum.ru/cpp-beginners/thread788243.html
Всем доброго времени суток. Помогите пожалуйста разобраться с тем что я выделю в коде. Не совсем понимаю работу программы. #include <iostream> #include <iomanip> #include <cstdlib> #include <ctime> int main() { int m1; int m2;
C++ Определить степени вершин графа и если граф однородный - вывести степень однородности Помогите пожалуйста с кодом - на входе у нас есть файл с параметрами графа вида: n m v1 u1 v2 u2 .... vm um Здесь n - количество вершин графа (целое число, больше нуля), m - количество ребер графа (целое число, больше нуля), vi и ui - Начальная и конечная вершина ребра i (1 ≤ vi ≤ n, 1 ≤ ui ≤ n, целые числа). Индексация вершин в файле ведется с 1. Считается, что граф является... подробнее

Показать сообщение отдельно
vua72
414 / 414 / 85
Регистрация: 28.11.2010
Сообщений: 1,177
Завершенные тесты: 1
17.02.2013, 18:18     Азбука Морзе
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#include <iostream>
#include <string>
#include <fstream>
#include <cstdlib>
 
using namespace std;
 
void convert(std::string & inb, std::string & outb);
 
int main() {
    string inbuf = "", outbuf = "";
    char *buf;
    long int len = 0;
    //-- read from file
    ifstream infile("morze.txt", ios_base::binary);
    if (!infile.is_open()) {
        exit(1);
    };
    infile.seekg(0, ios::end);
    len = infile.tellg();
    cout << endl << len;
    buf = new char[len];
    infile.seekg(0, ios_base::beg);
    infile.read(buf, len);
    infile.close();
    //--
    inbuf.assign(buf, len - 1);
    convert(inbuf, outbuf);
    cout << endl << inbuf;
    cout << endl << outbuf;
    delete[] buf;
    return 0;
}
 
void convert(std::string & inb, std::string & outb) {
    std::string buf = "";
    for (std::string::iterator it = inb.begin(); it != inb.end(); ++it) {
        if (*it == ' ')
            buf = " ";
        else if (*it == '0')
            buf = "-----";
        else if (*it == '1')
            buf = ".----";
        else if (*it == '2')
            buf = "..---";
        else if (*it == '3')
            buf = "...--";
        else if (*it == '4')
            buf = "....-";
        else if (*it == '5')
            buf = ".....";
        else if (*it == '6')
            buf = "-....";
        else if (*it == '7')
            buf = "--...";
        else if (*it == '8')
            buf = "---..";
        else if (*it == '9')
            buf = "----.";
        else if (*it == 'A' || *it == 'a')
            buf = ".-";
        else if (*it == 'B' || *it == 'b')
            buf = "-...";
        else if (*it == 'C' || *it == 'c')
            buf = "-.-.";
        else if (*it == 'D' || *it == 'd')
            buf = "-..";
        else if (*it == 'E' || *it == 'e')
            buf = ".";
        else if (*it == 'F' || *it == 'f')
            buf = "..-.";
        else if (*it == 'G' || *it == 'g')
            buf = "--.";
        else if (*it == 'H' || *it == 'h')
            buf = "....";
        else if (*it == 'I' || *it == 'i')
            buf = "..";
        else if (*it == 'J' || *it == 'j')
            buf = ".---";
        else if (*it == 'K' || *it == 'k')
            buf = "-.-";
        else if (*it == 'L' || *it == 'l')
            buf = ".-..";
        else if (*it == 'M' || *it == 'm')
            buf = "--";
        else if (*it == 'N' || *it == 'n')
            buf = "-.";
        else if (*it == 'O' || *it == 'o')
            buf = "---";
        else if (*it == 'P' || *it == 'p')
            buf = ".--.";
        else if (*it == 'Q' || *it == 'q')
            buf = "--.-";
        else if (*it == 'R' || *it == 'r')
            buf = ".-.";
        else if (*it == 'S' || *it == 's')
            buf = "...";
        else if (*it == 'T' || *it == 't')
            buf = "-";
        else if (*it == 'U' || *it == 'u')
            buf = "..-";
        else if (*it == 'V' || *it == 'v')
            buf = "...-";
        else if (*it == 'W' || *it == 'w')
            buf = ".--";
        else if (*it == 'X' || *it == 'x')
            buf = "-..-";
        else if (*it == 'Y' || *it == 'y')
            buf = "-.--";
        else if (*it == 'Z' || *it == 'z')
            buf = "--..";
        else {
            buf = "Error";
        }
        //cout << endl << *it <<"  "<< buf;
        outb += buf + " ";
    }
}
 
Текущее время: 17:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru