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

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

Войти
Регистрация
Восстановить пароль
 
murod
-2 / 7 / 2
Регистрация: 04.11.2010
Сообщений: 163
#1

строки - C++

21.06.2011, 14:02. Просмотров 858. Ответов 4
Метки нет (Все метки)

Юлий Цезарь использовал свой способ шифрования текста. Каждая буква заменялась на следующую по алфавиту через K позиций по кругу. Необходимо по заданной шифровке определить исходный текст.



Формат входного файла

В первой строке дана шифровка, состоящая из заглавных латинских букв. Во второй строке число K (1 ≤ K ≤ 10).



Формат выходного файла

Требуется вывести результат расшифровки.



Примеры

Ввод Вывод

XPSE WORD
1

ZABC WXYZ
3
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2011, 14:02     строки
Посмотрите здесь:

Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки - Java
Помогите пожалуйста! 1)Даны три строки. Определить можно ли из символов третьей строки получить первую и вторую строки. 2)Дана...

Ввести строки и через n символов первой строки вставить вторую строку, и так до конца строки - C++ Builder
Помогите исправить баг задача состоит в следующем :ввести строку и простроку тоесть две строки и надо через (n) символов первой строки...

Сравнить строки, первый несовпадающий элемент строки-приемника записать в регистр AL, строки-источника - в DL - Assembler
Помогите написать программу на ассемблерене совсем еще разобрался с этим задание: Ввести с клавиатуры две строки одноразрядных...

Слить две строки, вставив символы одной строки между символами другой строки - Pascal
Строка a из n символов лексикографически меньше строки b из n символов, если существует такой индекс j, что aj < bj, а для всех i < j ai =...

Определить длину строки. Если длина строки >6, удалить часть строки в { } скобках. - Turbo Pascal
Ввести с клавиатуры строку символов. Признак окончания ввода строки – нажатие клавиши "Ввод". Программа должна определить длину введенной...

Строки. Если в конце строки точка отсутствует, то найти слово, заканчивающееся точкой и перенести его в конец строки. - Pascal
Дана строка, состоящая из слов и содержащая одну точку в конце одного из слов. Если в конце строки точка отсутствует, то найти слово,...

Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки - C++
Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки. 1. Я дуб дубом,даже...

Строки. Определить длину введенной строки, если длина кратна 4, то первая часть строки меняется местами со второй - Turbo Pascal
Ввести с клавиатуры строку символов.признак окончания ввода строки-нажатие клавиши ввод.Программа должна определить длину введенной строки...

Строки. Даны строка S и подстрока S1.Удалить из строки S все вхождения строки S1 - Turbo Pascal
Даны строка S и подстрока S1.Удалить из строки S все вхождения строки S1.В строке S подсчитать кол-во вхождений строки S1.

БД с операциями: добавление новой строки, удаление строки, редактирование имеющейся строки - PascalABC.NET
Нужно создать базу данных в паскале, с операциями: добавление новой строки, удаление строки, редактирование имеющей строки. Желательно с...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
21.06.2011, 15:25     строки #2
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
#include <iostream>
#include <ctype.h>
 
using namespace std;
 
void encode(char*,int);
void decode(char*,int);
int   indexOf(char);
 
 
int main()
{
    char s[] = "XPSE WORD";
   
    cout << s << endl;
    encode(s,4);
    cout << s << endl;
    decode(s,4);
    cout << s << endl;
       
    cin.get();
    return 0;
}
 
void decode(char* s,int key)
{
    char* alphabet = new char[26];
   
    for (int i=0; i<26; i++)
        alphabet[i] = char(i+65);
  
    for (int i=0; i<strlen(s); i++)
        if (isalpha(s[i])) 
        {
            int index = indexOf(s[i]);
            if ((index - key) >= 0) s[i] = alphabet[(index-key) % 26];
            else s[i] = alphabet[26-key+index];
        }
 
    delete[] alphabet;
}
 
void encode(char* s,int key)
{
    char* alphabet = new char[26];
   
    for (int i=0; i<26; i++)
        alphabet[i] = char(i+65);
 
    for (int i=0; i<strlen(s); i++)
        if (isalpha(s[i])) s[i] = alphabet[(indexOf(s[i])+key) % 26];
       
    delete[] alphabet;
 
}
 
int indexOf(char symbol)
{
    for (int i=0; i<26; i++)
        if ( ((i+65) == symbol) || ((i+97) == symbol) ) return i;
    return -1;
}
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
21.06.2011, 15:31     строки #3
Блин, опоздал. Ладно, всё равно держите:

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
#include <iostream>
#include <fstream>
#include <algorithm>
#include <string.h>
 
using namespace std;
 
int cypher_key;
 
void decypher( char &c )
{
    if( isalpha( c ) )
    {
        c -= cypher_key;
 
        if( c < 'A' )
           c = 'Z' - ('A' - c - 1);
    }
}
 
int main(  )
{
    string input;
 
    char *in_name = "./in.txt";
    char *out_name = "./out.txt";
 
    ifstream in_s( in_name, ios::in );
 
    if( !in_s.is_open() )
        return -1;
 
    ofstream out_s( out_name, ios::out );
 
    if( !out_s.is_open() )
    {
        in_s.close();
        return -1;
    }
 
    getline( in_s, input );
    in_s >> cypher_key;
    in_s.close();
 
    for_each( input.begin(), input.end(), decypher );
 
    out_s << input;
    out_s.close();
 
    return 0;
}
murod
-2 / 7 / 2
Регистрация: 04.11.2010
Сообщений: 163
21.06.2011, 15:35  [ТС]     строки #4
если честно ниче не понятно ! че это такое ?

Добавлено через 1 минуту
но спасибо за старание !
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
21.06.2011, 15:36     строки #5
Цитата Сообщение от murod Посмотреть сообщение
если честно ниче не понятно ! че это такое ?
Пирожок с макаронами, блин. Программа эта, которую вы просили.
Yandex
Объявления
21.06.2011, 15:36     строки
Ответ Создать тему
Опции темы

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