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

Из одного слова составить несколько других - C++

Восстановить пароль Регистрация
 
SOUTHStanly
Сообщений: n/a
01.02.2011, 17:43     Из одного слова составить несколько других #1
Всем привет. Задача такая: Есть слово "информатика". Надо из этого слова получить слова "форма", "романтика" и "инФОРМАТИКА". Примерно знаю как сделать, но никак не пойму, как это реализовать средствами С++. Хотя бы алгоритм и основные команды.
з.ы. Если будете использовать функцию memcpy, memcmp, etc, то объясните, как их правильно использовать и что они делают.
Спасибо.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.02.2011, 17:43     Из одного слова составить несколько других
Посмотрите здесь:

C++ Из массива целых чисел составить три других
Несколько слов об инклудах и других C++
Вызов одного приложения из других C++
C++ Составление слова из массива из четырёх других
C++ Формирование двух других массивов из одного исходного
Формирование двух других массивов из одного исходного одномерного массива C++
C++ Определить, можно ли из букв одного слова составить другое
C++ Отредактировать строку, продублировав через один пробел слова, из которых можно составить слова-палиндромы

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
01.02.2011, 19:53     Из одного слова составить несколько других #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<iostream>
using namespace std;
 
int main(){
    char c[]="информатика";
    for(int i=2; i<sizeof(c); ++i){
        if(c[i]!='\0') c[i]-=32;
    }
    for(int i=0; i<sizeof(c); ++i){
        if(c[i]!='\0') c[i]+=192;
    }
    cout<<c;
}
Veber
Сообщений: n/a
21.04.2012, 11:52     Из одного слова составить несколько других #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
#include<string.h>
#include<windows.h>
#include<locale.h>
#include<mem.h>
using namespace std;
int main(){
setlocale(0,"Russian");
    char c[]="informatika";
    char ch[255];
    char chh[255];
    char formatika[]="formatika";
    char i[255];
    char n[255];
    memcpy(ch,c+2,5);
    ch[5]='\0';
    memcpy(chh,c+4,1);
 
    memcpy(chh+2,c+3,1);
 
    memcpy(chh+3,c+5,2);
 
    memcpy(chh+5,c+1,1);
 
    memcpy(chh+6,c+7,4);
    chh[10]='\0';
    memcpy(i,c+0,1);
    i[1]='\0';
    strupr(formatika);
    memcpy(n,c+1,1);
    n[1]='\0';
    cout<<c<<endl<<ch<<endl<<chh<<endl
    <<i<<n<<formatika;
 
getch();
        return 0;
}


знаю, что по-китайски, но хоть что-то

Добавлено через 14 минут
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
#include<conio.h>
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<windows.h>
#include<locale.h>
#include<mem.h>
using namespace std;
int main(){
setlocale(0,"Russian");
    char c[]="informatika";
    char ch[255];
    char chh[255];
    char formatika[]="formatika";
    char i[255];
    char n[255];
    memcpy(ch,c+2,5);
    ch[5]='\0';
    memcpy(chh,c+4,1);
 
    memcpy(chh+1,c+3,1);
 
    memcpy(chh+2,c+5,2);
 
    memcpy(chh+4,c+1,1);
 
    memcpy(chh+5,c+7,4);
    chh[10]='\0';
    memcpy(i,c+0,1);
    i[1]='\0';
    strupr(formatika);
    memcpy(n,c+1,1);
    n[1]='\0';
    cout<<c<<endl<<ch<<endl<<chh<<endl
    <<i<<n<<formatika;
 
getch();
        return 0;
}
вот окончательный вариант, сори, я просто на практике)
Yandex
Объявления
21.04.2012, 11:52     Из одного слова составить несколько других
Ответ Создать тему
Опции темы

Текущее время: 01:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru