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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Milan2266
0 / 0 / 0
Регистрация: 24.06.2015
Сообщений: 28
#1

Регулировка скорости - C++

30.06.2015, 19:40. Просмотров 372. Ответов 19
Метки нет (Все метки)

Надо составить прогу, которая позволяет текст, содержащийся в файле, воспроизвести сигналами азбуки Морзе. При этом текст должен посимвольно выводиться на экран. Предусмотреть возможность плавной регулировки скорости воспроизведения.

Справился, наконец-то, не без помощи, с выводом из файла на экран, все отлично работает. Но вот скорость регулировки как сделать не знаю. Нужна ваша помощь, господа!
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
#include "stdafx.h"
  #include <fstream>
 #include "iostream"
 using namespace std;
 
 int main ()
{
char en;
fstream F;
F.open(L"C:\\Users\\Андрей\\Desktop\\123.txt");
 
if (!F.is_open())
cout << "error";
else 
{
 while (F >> en)
 
 switch (en)
{
case 'A': case 'a':cout<< ".-1"; break;
case 'B': case 'b':cout<< "-...2"; break;
case 'C': case 'c':cout<< "-.-.3"; break;
case 'D': case 'd':cout<< "-..4"; break;
case 'E': case 'e':cout<< ".5"; break;
case 'F': case 'f':cout<< "..-.6"; break;
case 'G': case 'g':cout<< "--.7"; break;
case 'H': case 'h':cout<< "....8"; break;
case 'I': case 'i':cout<< "..9"; break;
case 'J': case 'j':cout<< ".---10"; break;
case 'K': case 'k':cout<< "-.-11"; break;
case 'L': case 'l':cout<< ".-..12"; break;
case 'M': case 'm':cout<< "--13"; break;
case 'N': case 'n':cout<< "-.14"; break;
case 'O': case 'o':cout<< "---15"; break;
case 'P': case 'p':cout<< ".--.16"; break;
case 'Q': case 'q':cout<< "--.-17"; break;
case 'R': case 'r':cout<< ".-.18"; break;
case 'S': case 's':cout<< "...19"; break;
case 'T': case 't':cout<< "-20"; break;
case 'U': case 'u':cout<< "..-21"; break;
case 'V': case 'v':cout<< "...-22"; break;
case 'W': case 'w':cout<< ".--23"; break;
case 'X': case 'x':cout<< "-..-24"; break;
case 'Y': case 'y':cout<< "-.--25"; break;
case 'Z': case 'z':cout<< "--..26"; break;
case '1':cout<< ".----"; break;
case '2':cout<< "..---"; break;
case '3':cout<< "...--"; break;
case '4':cout<< "....-"; break;
case '5':cout<< "....."; break;
case '6':cout<< "-...."; break;
case '7':cout<< "--..."; break;
case '8':cout<< "---.."; break;
case '9':cout<< "----."; break;
case '0':cout<< "-----"; break;
case '.':cout<< "......"; break;
case ',':cout<< ".-.-.-"; break;
case '!':cout<< "--..--"; break;
case '?':cout<< "..--.."; break;
 
 } 
}
  system ("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2015, 19:40     Регулировка скорости
Посмотрите здесь:

Регулировка скорости вывода символа на экран - C++
Задача поставлена следующая - вывести на экран линию из символов, параметры которой задаются пользователем. В числе прочих есть параметр...

Сравнение скорости - C++
вечер добрый. смотрел задачи на codeforces, и заметил, что 90% решений на с++ написано в таком стиле, код взят случайный - #include...

Фикс скорости Игры - C++
Здравствуйте ув. программеры. Очень прошу помочь с подключением таймера для фиксирования скорости передвижения объектов в игре (пишу с...

Сравнение скорости вычислений с# и С++ - C++
Сделал тестовые расчеты для сравнения скорости расчетов с# и С++ на примере умножения квадратных матриц. Сравнил расчеты без ускорения...

Программа замера скорости - C++
Здравствуйте. Мне нужно проанализировать скорость методов сортировки сортировки но почему то код не желает компилироваться. Рассмотрим...

Разница в скорости выполнения, итераторы - C++
Википедия for (ContainerType::iterator it = C.begin(),end = C.end(); it != end; ++it) { std::cout &lt;&lt; *it &lt;&lt; std::endl; } ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2015, 19:47     Регулировка скорости #2
Это пример задержки на 5 секунд. Измени время задержки и встать её в цикл до switch, или после (в зависимости от потребности).
C++
1
2
3
4
5
6
7
#include <thread>
 
int main()
{
    std::this_thread::sleep_for( std::chrono::milliseconds( 5000 ) );
    return 0;
}
Sn1p3rOk
281 / 168 / 66
Регистрация: 19.04.2014
Сообщений: 1,080
Завершенные тесты: 2
30.06.2015, 19:55     Регулировка скорости #3
C++
1
2
3
4
#include <Windows.h>
 
// Функция воспроизводит звуковой сигнал
Beep(/* Частота */, /* Длительность */)
Milan2266
0 / 0 / 0
Регистрация: 24.06.2015
Сообщений: 28
30.06.2015, 19:58  [ТС]     Регулировка скорости #4
castaway, Спасибо. сейчас возможности нет просмотреть работоспособность. Но нужно не в программе секунды задавать, а прописать так, чтобы был выбор. Хотя бы 3 выбора скорости. Медленно, средне, быстро. Ну или задавать число. В общем, чтобы у юзера был выбор

Добавлено через 51 секунду
Sn1p3rOk, Зачем мне звуковой сигнал?
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2015, 20:05     Регулировка скорости #5
Цитата Сообщение от Milan2266 Посмотреть сообщение
Но нужно не в программе секунды задавать, а прописать так, чтобы был выбор.
Ты написал такую здоровенную программу, не думаю что тебе составит труда ввести задержку с клавиатуры. Если всё-таки составит - показывай как пробовал.

Не по теме:

Говори сразу что еще потом понадобится. Делать за тебя не буду, просто интересно.

Milan2266
0 / 0 / 0
Регистрация: 24.06.2015
Сообщений: 28
30.06.2015, 20:29  [ТС]     Регулировка скорости #6
castaway, Ну пожалуйста Ладно, шутки в сторону, сейчас выдам что нить, посмотрите.

Добавлено через 10 минут
castaway, для начала вот проблема: fatal error C1083: Не удается открыть файл include: thread: No such file or directory
VS 2008
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2015, 20:33     Регулировка скорости #7
Milan2266, это из стандарта C++11. Я не в курсе, поддерживает ли его VS 2008..
В ОС Windows можешь воспользоваться альтернативным вариантом:
C++
1
Sleep( 5000 /* количество миллисекунд */ );
Разница лишь в том, что вариант из второго поста - кросплатформенный.
Sn1p3rOk
281 / 168 / 66
Регистрация: 19.04.2014
Сообщений: 1,080
Завершенные тесты: 2
30.06.2015, 20:38     Регулировка скорости #8
Цитата Сообщение от Milan2266 Посмотреть сообщение
castaway, Спасибо. сейчас возможности нет просмотреть работоспособность. Но нужно не в программе секунды задавать, а прописать так, чтобы был выбор. Хотя бы 3 выбора скорости. Медленно, средне, быстро. Ну или задавать число. В общем, чтобы у юзера был выбор

Добавлено через 51 секунду
Sn1p3rOk, Зачем мне звуковой сигнал?
Забавно, для вывода звукового сигнала точки и тире...или ты решил просто текстом вываливать? В том числе есть регулировка скорости воспроизведения.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2015, 20:43     Регулировка скорости #9
Цитата Сообщение от Sn1p3rOk Посмотреть сообщение
или ты решил просто текстом вываливать?
На самом деле именно это он и решил. По коду же понятно.
Sn1p3rOk
281 / 168 / 66
Регистрация: 19.04.2014
Сообщений: 1,080
Завершенные тесты: 2
30.06.2015, 20:45     Регулировка скорости #10
Цитата Сообщение от castaway Посмотреть сообщение
На самом деле именно это он и решил. По коду же понятно.
Ну тогда извините, не буду навязывать свой метод решения.
Milan2266
0 / 0 / 0
Регистрация: 24.06.2015
Сообщений: 28
30.06.2015, 20:53  [ТС]     Регулировка скорости #11
Вставил sleep до switch, выводится в консоль только последний символ. Почему?

Добавлено через 1 минуту
Sn1p3rOk, я понял для чего ты мне про сигналы написал, спасибо) вот только в аудиториях, на компьютерах, у нас звук не выведется, так что только текст.

Добавлено через 1 минуту
Хехе! все работает!) спасибо ребятки, все исправил))

Добавлено через 59 секунд
Теперь доделаю, с выбором, и выложу, может полезно будет кому. castaway, если есть возможность, загляни через пол часа ко мне на огонек, может что опять не получится?
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2015, 20:56     Регулировка скорости #12
Цитата Сообщение от Milan2266 Посмотреть сообщение
castaway, если есть возможность, загляни через пол часа ко мне на огонек, может что опять не получится?
А ты где географически находишься? Пиво будет?
Milan2266
0 / 0 / 0
Регистрация: 24.06.2015
Сообщений: 28
30.06.2015, 21:07  [ТС]     Регулировка скорости #13
castaway, Хехе) Я в Казани нахожусь)
Программ с морзянкой много было на сайте, но ни одной работающей. Пригодится кому:
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
#include "stdafx.h"
#include <fstream>
#include "iostream"
#include <Windows.h.>
using namespace std;
 
int main ()
{
    char en;
    int n;
cout<<"Vvedite skorost regulirovki n=";cin>>n;
ifstream F;
    F.open(L"C:\\Users\\Андрей\\Desktop\\123.txt");
 
if (!F.is_open())
    cout << "error";
else 
{
while (F >> en)
{
Sleep (n);
 
     switch (en)
    {
    case 'A': case 'a':cout<< ".-1"; break;
    case 'B': case 'b':cout<< "-...2"; break;
    case 'C': case 'c':cout<< "-.-.3"; break;
    case 'D': case 'd':cout<< "-..4"; break;
    case 'E': case 'e':cout<< ".5"; break;
    case 'F': case 'f':cout<< "..-.6"; break;
    case 'G': case 'g':cout<< "--.7"; break;
    case 'H': case 'h':cout<< "....8"; break;
    case 'I': case 'i':cout<< "..9"; break;
    case 'J': case 'j':cout<< ".---10"; break;
    case 'K': case 'k':cout<< "-.-11"; break;
    case 'L': case 'l':cout<< ".-..12"; break;
    case 'M': case 'm':cout<< "--13"; break;
    case 'N': case 'n':cout<< "-.14"; break;
    case 'O': case 'o':cout<< "---15"; break;
    case 'P': case 'p':cout<< ".--.16"; break;
    case 'Q': case 'q':cout<< "--.-17"; break;
    case 'R': case 'r':cout<< ".-.18"; break;
    case 'S': case 's':cout<< "...19"; break;
    case 'T': case 't':cout<< "-20"; break;
    case 'U': case 'u':cout<< "..-21"; break;
    case 'V': case 'v':cout<< "...-22"; break;
    case 'W': case 'w':cout<< ".--23"; break;
    case 'X': case 'x':cout<< "-..-24"; break;
    case 'Y': case 'y':cout<< "-.--25"; break;
    case 'Z': case 'z':cout<< "--..26"; break;
    case '1':cout<< ".----"; break;
    case '2':cout<< "..---"; break;
    case '3':cout<< "...--"; break;
    case '4':cout<< "....-"; break;
    case '5':cout<< "....."; break;
    case '6':cout<< "-...."; break;
    case '7':cout<< "--..."; break;
    case '8':cout<< "---.."; break;
    case '9':cout<< "----."; break;
    case '0':cout<< "-----"; break;
    case '.':cout<< "......"; break;
    case ',':cout<< ".-.-.-"; break;
    case '!':cout<< "--..--"; break;
    case '?':cout<< "..--.."; break;
 
    } 
}
}
    system ("pause");
}
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
30.06.2015, 21:12     Регулировка скорости #14
C++
1
#include <Windows.h.>
последняя точка не нужна.
Milan2266, я так понял проблема решена? (в Казань не поеду)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.06.2015, 21:24     Регулировка скорости
Еще ссылки по теме:

вопрос по скорости ком порта - C++
есть оригинальная программа для обмена данными с сотовым телефоном. но версия моего аппарата не поддерживается. на основе команд с нее...

Найти скорости движения пешехода - C++
Пешеход двигался в течение t1 минут с некоторой скоростью v1 и t2 минут с другой скоростью v2, которая в полтора раза больше v1. Найти...

Сравнение скорости, условие или операция - C++
Подскажите, что быстрее сравнить 2 переменные if(x != y){ x = y + 1; } Или каждый раз расчитывать x = y + 1;

Измерение скорости работы блока программы - C++
Как можно протестировать на скорость работы отдельный блок программы? Пример: замер скорости class_one.function1(). int main() {...


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

Или воспользуйтесь поиском по форуму:
Milan2266
0 / 0 / 0
Регистрация: 24.06.2015
Сообщений: 28
30.06.2015, 21:24  [ТС]     Регулировка скорости #15
castaway, Ну вот, так быстро нашел и потерял... ) castaway, К чему можно придраться по коду?

Добавлено через 6 минут
castaway, А так да, проблема решена быстрее, чем я думал. Спасибо большое, добрый человек))
Yandex
Объявления
30.06.2015, 21:24     Регулировка скорости
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru