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

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

Войти
Регистрация
Восстановить пароль
 
Shato
2 / 2 / 0
Регистрация: 16.03.2011
Сообщений: 82
#1

обход - C++

15.04.2011, 15:12. Просмотров 516. Ответов 5
Метки нет (Все метки)

Король шахматной доски решил выяснить боеспособность своей армии. Посыльный объехал все клетки поля и сделал записи обо всех войсках, имеющихся в государстве.
Вам поручено упорядочить полученные данные для предъявления королю. Посыльный обозначал войска большими латинскими буквами P, K, S, L, F. Вы должны вывести этот список в неубывающем порядке, если P<K<S<L<F.
Входные данные
Во входном файле содержатся записи посыльного без пробелов. Известно, что в королевстве не более 64 войск.

Выходные данные
В выходной файл необходимо вывести упорядоченный список войск.
Пример

Ввод
PKSLFKSSLF

Вывод
Если кому интересно, сделайте пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2011, 15:12     обход
Посмотрите здесь:

C++ Обход доски
Обход матрицы C++
Обход дерева) C++
Обратный обход C++
Обход дерева C++
обход дерева C++
C++ Обход лабиринта
Обход матрицы C++
Разница между понятиями "Обход в прямом направлении" и "Итерационный прямой обход" C++
C++ обход дерева
C++ Обход в ширину
Обход массива C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
15.04.2011, 15:32     обход #2
Честно задание сформулировано ужестно, приведи входной файл, как там войска записаны + в английском всего 26 букв, откуда 64 названия взялось???
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1285 / 1219 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
15.04.2011, 15:34     обход #3
Т.е. суть задачи в поиске "войск" на доске и их сортировка?
Не интересно.)

Преподов надо сильно мучить, чтобы они глупые задания не давали. Конкретно, завершённая программа не даёт ответа на основной вопрос "какова боеспособность армии". Всё, что становится известно, это количество различных родов войск. И всё. Вот зачем они студентам мозги пудрят?

Не по теме:

Тоже в преподы хачу.) Тупые задания придумывать...



Добавлено через 38 секунд
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
откуда 64 названия взялось?
Шахматная доска 8х8 клеток. Он же "Король шахматной доски".)
Overmind024
99 / 99 / 6
Регистрация: 10.09.2010
Сообщений: 267
15.04.2011, 15:43     обход #4
Shato, а сортировка какая то конкретная или любая пойдет??
Shato
2 / 2 / 0
Регистрация: 16.03.2011
Сообщений: 82
15.04.2011, 16:04  [ТС]     обход #5
любая скорее всего
Overmind024
99 / 99 / 6
Регистрация: 10.09.2010
Сообщений: 267
16.04.2011, 00:35     обход #6
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
#include <stdio.h>
#include <string.h>
#include <algorithm>
 
int mac(char latter)
{
    switch(latter)
    {
    case 'P':
        return 1;
    case 'K':
        return 2;
    case 'S':
        return 3;
    case 'L':
        return 4;
    case 'F':
        return 5;
    default:
        return 0;
    }
}
 
bool cmp(char _left,char _right)
{
    return(mac(_left)<mac(_right));
}
 
int main()
{
    char str[65]; 
    FILE* ifile = fopen("input.txt","r");
    fgets(str,65,ifile);
    fclose(ifile);
    std::sort(str,str+strlen(str),cmp);
    FILE* ofile = fopen("output.txt","w");
    fprintf(ofile,"%s",str);
    fclose(ofile);
    return 0;
}
Как то так.
Yandex
Объявления
16.04.2011, 00:35     обход
Ответ Создать тему
Опции темы

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