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

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

Войти
Регистрация
Восстановить пароль
 
Лэни
0 / 0 / 0
Регистрация: 05.10.2010
Сообщений: 4
#1

Найти в строке все слова, представляющие собой правильные записи дат в формате "dd/mm/yyyy" - C++

27.11.2010, 16:04. Просмотров 567. Ответов 1
Метки нет (Все метки)

Строка состоит из слов, разделенных одним или несколькими пробелами. Найти все слова, представляющие собой правильные записи дат в формате “dd/mm/yyyy”. Вывести их на экран по возрастанию от более ранних к более поздним. Затем модифицировать строку, удалив их из строки. Разделители сохранить. Вывести на экран модифицированную строку.

как лучше это реализовать? и как вообще искать эти даты в строке?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2010, 16:04     Найти в строке все слова, представляющие собой правильные записи дат в формате "dd/mm/yyyy"
Посмотрите здесь:

Выяснить, есть ли в заданной строке слова, которые содержат все буквы слова "read" - C++
Помогите, пожалуйста, с кодом на с++. Задание было такое: Дано строку символов. Выяснить, есть ли в ней слова, которые содержат все...

Найти все и вывести все слова в которых есть буква "к" - C++
дана строка (ввод с клавы) найти все и вывести все слова в которых есть буква "к"!!!!!!!!!!!!!!!!!!!!!!(разделители между словами точка или...

Из слова "яблоко" путем склеек и вырезок его букв получить слова "блок" и "око" - C++
Самым самым самым простым способом.

Определить длину каждого слова. Удалить все буквы "а" и "о" с фамилии - C++
3.Написать программу, вводите фамилию, имя и отчество одной строкой. Определить длину каждого слова. Удалить все буквы "а" и "о" с фамилии....

Во введённой строке требуется поменять все буквы "а" на "i", и наоборот - C++
писал код по аналогии на Паскале. что-то как-то не очень вышло #include <iostream> #include <string> using namespace std; int...

Дана строка найти все слова которые начинаются с буквой "c" - C++
Дана строка найти все слова которые начинаются с буквой "c"/

Найти все слова, в которых есть двойные согласные, и заменить их символом "*" - C++
дан текст(на англ. яз). найти все слова, в которых есть двойные согласные и заменить их *.

Нужно найти слова которые встречаются в буквы "a" "z" - C++
Даны две буквы "a" "z" и текст, нужно найти и вывести те слова в которых встречаются две эти буквы вот мой вариант но он не работает ...

Необработанное исключение в "0x01082855" в "sort.exe": 0xC0000005: Нарушение прав доступа при записи "0xcccccccc" - C++
Всем привет! помогите мне понять в чём дело. написал программу: #include "stdafx.h" #include <ctime> #include <iostream> #include...

Необработанное исключение в "0x013f2b22" в "123.exe": 0xC0000005: Нарушение прав доступа при записи "0xfdfdfdfd" - C++
Вот функция для удаления столбца: #pragma once #include <iostream> using namespace std; int **DeleteIndexCol(int **ar,int s1,int...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ne6u4u
12 / 12 / 0
Регистрация: 14.11.2010
Сообщений: 29
27.11.2010, 22:07     Найти в строке все слова, представляющие собой правильные записи дат в формате "dd/mm/yyyy" #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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
// char_str.cpp
#include <iostream>
#include <cstring>
using namespace std;
class date
{
private:
    int day, month, year;
public:
    void set_date(int d, int m, int y)
    {
        day=d; month=m; year = y; 
    }
    void show_date()
    {
        cout << day << "/" << month << "/" << year;
    }
    int sort(date dd)
    {
        if ((year > dd.year) || ((year == dd.year)&&(month>dd.month)) || ((year==dd.year)&&(month==dd.month)&&(day>dd.day)))
        {
            return 1;
        }
        else
            return 0;
    }
};
int main()
{
    setlocale(LC_ALL,"Russian");
    date pznach[100];
    const int MAX = 100000;
    int count = 0;
    char str[MAX];
    cout << "Введите строку: ";
    cin.getline(str, MAX);
 
    count = 0;
    for (int i=9; i <strlen(str); i++)
    {
        if ((str[i]>= '0' && str[i] <= '9') && 
            (str[i-1]>= '0' && str[i-1] <='9') && 
            (str[i-2]>= '0' && str[i-2] <='9') && 
            (str[i-3]>= '0' && str[i-3] <='9') && 
            (str[i-4]=='/') &&
            (str[i-5]>= '0' && str[i-5] <='9') &&
            (str[i-6]>= '0' && str[i-6] <='9') &&
            (str[i-7]=='/') &&
            (str[i-8]>= '0' && str[i-8] <='9') &&
            (str[i-9]>= '0' && str[i-9] <='9')) 
        {
            char temp_d[2], temp_m[2], temp_y[4];
            int t_d, t_m, t_y;
            temp_d[0] = str[i-9];
            temp_d[1] = str[i-8];
            temp_m[0] = str[i-6];
            temp_m[1] = str[i-5];
            temp_y[0] = str[i-3];
            temp_y[1] = str[i-2];
            temp_y[2] = str[i-1];
            temp_y[3] = str[i];
            t_d = atoi(temp_d);
            t_m = atoi(temp_m);
            t_y = atoi(temp_y);
            pznach[count].set_date(t_d, t_m, t_y);
            count++;
        }
    }
 
    cout << endl << "Найденные даты: " << endl;
    for (int i=0; i<count; i++)
    {
        pznach[i].show_date();
        cout << endl;
    }
 
    for (int i=0; i<count; i++)
    {
        for (int j=0; j<count-1; j++)
        {
            if ((pznach[j].sort(pznach[j+1])) == 1)
            {
                date temp;
                temp = pznach[j];
                pznach[j] = pznach[j+1];
                pznach[j+1] = temp;
            }
        }
    }
 
    cout << endl << "Отсортированные даты: " << endl;
    for (int i=0; i<count; i++)
    {
        pznach[i].show_date();
        cout << endl;
    }
 
 
    return 0;
}
пример как искать и сортировать
Ответ Создать тему
Опции темы

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