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

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

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

обход - C++

15.04.2011, 15:12. Просмотров 539. Ответов 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++
struct SAcson { int l,c; // строка, столбец float x; // заряд bool e; // возбуждающий или тормозящий }; struct SSinapc { ...

обход контейнеров - C++
Всем привет. Можно ли как-нибудь написать цикл фор под два контейнера для полученя доступа к Data ? class Data { public: int...

Обратный обход - C++
У меня есть реализация дерева и его прямой и симметричный обход. Как можно реализовать обратный обход? #include &quot;stdafx.h&quot; #include...

Обход матрицы - C++
Нужно составить программу ввода квадратной матрицы и печати в строку всех ее элементов в данном порядке обхода: 7 13 14 16 6 8 12 15 ...

Обход ввода - C++
Народ привет. Я чёт не могу придумать способ один...сейчас объясню задумку) Вот допустим у нас есть прога которая выводит в строчку...

Обход массива - C++
Добрый день. такое вот задание : 1. Заполнить значения элементов, чтобы они образовали циклический односвязный список в соответствии с...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
15.04.2011, 15:32     обход #2
Честно задание сформулировано ужестно, приведи входной файл, как там войска записаны + в английском всего 26 букв, откуда 64 названия взялось???
Deviaphan
Делаю внезапно и красиво
Эксперт C++
1286 / 1220 / 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
любая скорее всего
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2011, 00:35     обход
Еще ссылки по теме:

Обход матрицы - C++
есть двумерная матрица 4х4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 ее рандомно перемешиваем. потом берем...

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

Организовать обход в глубину - C++
Искал код, не смог найти подходящий. Цель следующая - первым обходом ищем все шарниры, а вторым нужно найти для каждого шарнира, на...

Обход массива по указателю - C++
Доброго времени суток. К примеру, у меня есть такой код: #include &lt;iostream&gt; using namespace std; int main() { int mass; ...


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

Или воспользуйтесь поиском по форуму:
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     обход
Ответ Создать тему
Опции темы

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