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

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

Войти
Регистрация
Восстановить пароль
 
Прозрачный
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 66
#1

Дата вводится строкой нужно извлечь день месяц и год в int переменные - C++

06.06.2013, 22:12. Просмотров 798. Ответов 12
Метки нет (Все метки)

Дата вводится строкой нужно извлечь день месяц и год в int переменные.
два варианта передачи строки: 1) "12.05.2012" 2) в строке месяц буквами "15 may 2011".
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.06.2013, 22:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дата вводится строкой нужно извлечь день месяц и год в int переменные (C++):

Создайте класс «Дата» со свойствами год, високосный год, месяц, день месяца и день недели - C++
Создайте класс «Дата» со свойствами год, високосный год, месяц, день месяца и день недели. Создайте для него метод котрый бы...

Дана дата в формате день:месяц:год. Определить день недели - C++
Задание: Дана дата в формате день:месяц:год. Определить день недели.

Дата, год, месяц, день - C++
/* Дата год, месяц, день от 01.01.0001 до 31.12.2999 Date Високосными являются года кратные 4 и 400, но не кратные 100 ...

Дата в формате <день>.<месяц>.<год> - C++
а дальше нужно будет определить, например, сколько дней прошло с начала года и т.п. Подскажите, пожалуйста, как правильно получить...

Создайте структуру Дата с элементами День, Месяц, Год. - C++
Народ, не могу понять структуры и учитель ничего не объясняет, помогите с кодом. Создайте структуру Дата с элементами День, Месяц, Год....

Поместить сегодняшний день, месяц и год в соответствующие переменные - C++
Как можно поместить сегодняшнюю дату в переменные d, m, y (день, месяц, год) в числовом формате?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cyberbrain1000
23 / 23 / 3
Регистрация: 15.04.2013
Сообщений: 62
06.06.2013, 23:05 #2
1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
int main()
{
    int day = 0, month = 0, year = 0;
    do
    {
        std::cin.clear();
        std::cin.sync();
        ((std::cin >> day).ignore(1) >> month).ignore(1) >> year;
    }
     while(!std::cin);
    std::cout << day << '.' << month << '.' << year << "\n\n";
    return 0;
}
1
okman
15 / 21 / 1
Регистрация: 05.04.2013
Сообщений: 204
06.06.2013, 23:26 #3
Цитата Сообщение от cyberbrain1000 Посмотреть сообщение
1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
int main()
{
    int day = 0, month = 0, year = 0;
    do
    {
        std::cin.clear();
        std::cin.sync();
        ((std::cin >> day).ignore(1) >> month).ignore(1) >> year;
    }
     while(!std::cin);
    std::cout << day << '.' << month << '.' << year << "\n\n";
    return 0;
}
А это STL?
0
cyberbrain1000
23 / 23 / 3
Регистрация: 15.04.2013
Сообщений: 62
06.06.2013, 23:27 #4
2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
 
int main()
{
    int day = 0, year = 0;
    std::string smonth;
    std::vector<std::string> vec{"january", "february", "march", "april", "may",
        "june", "july", "august", "september", "october", "november", "december"};
    std::vector<std::string>::const_iterator vit;
    do
    {
        std::cin.clear();
        std::cin.sync();
        std::cin >> day >> smonth >> year;
    }
     while(!std::cin || (vit = std::find(vec.begin(), vec.end(), smonth)) == vec.end());
    std::cout << day << '.' << vit - vec.begin() + 1 << '.' << year << "\n\n";
    return 0;
}
0
Пaтрик
415 / 390 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
06.06.2013, 23:28 #5
Цитата Сообщение от okman Посмотреть сообщение
А это STL?
STL - Standard Template Library. Здесь нет ни одного шаблона.
0
cyberbrain1000
23 / 23 / 3
Регистрация: 15.04.2013
Сообщений: 62
06.06.2013, 23:28 #6
Цитата Сообщение от okman Посмотреть сообщение
А это STL?
нет, не stl
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
06.06.2013, 23:29 #7
Цитата Сообщение от okman Посмотреть сообщение
А это STL?
Из вики:
Библиотека стандартных шаблонов (STL) (англ. Standard Template Library) — набор согласованных обобщённых алгоритмов, контейнеров, средств доступа к их содержимому и различных вспомогательных функций в C++.
Тут работа идет лишь с потоками ввода/вывода, STL тут и не пахнет.

Добавлено через 35 секунд

Не по теме:

Как понакинулись то отвечать

1
Прозрачный
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 66
07.06.2013, 09:02  [ТС] #8
Спасибо, а можно без std:: я такого еще не проходил!
0
okman
15 / 21 / 1
Регистрация: 05.04.2013
Сообщений: 204
07.06.2013, 09:39 #9
Цитата Сообщение от Прозрачный Посмотреть сообщение
Спасибо, а можно без std:: я такого еще не проходил!
напиши в хэдере, сразу после #include
C++
1
using namespace std;
и все, можешь std не писать.
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
07.06.2013, 17:21 #10
Прозрачный, без стандартного пространства имен т.е. без cout, cin и т.д.? Боюсь, что нет, нельзя.
Дело в том, что cout, например, на деле имеет полное имя как std::cout. Все, что до :: - это пространство имен, далее сокращенное имя. Я пишу полное т.к. не доверяю компилятору и еще иногда работаю с проектами, где скидывание всех функций в одну корзину чревато неработоспособностью проекта.
1
Прозрачный
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 66
07.06.2013, 22:23  [ТС] #11
Крутовато для меня, такого еще не проходили (где такое можно почитать), я учюсь по "Дейтел Х, Дейтел П. - Как програмировать на С ". А какой функцией можно перевести строчные "11" в число 11?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,929
07.06.2013, 22:25 #12
Прозрачный, "11" - '0'
0
Прозрачный
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 66
08.06.2013, 12:05  [ТС] #13
Вот что мне нужно было
C++
1
2
3
4
5
6
7
#include <stdio.h>
#include <stdlib.h>
void main (){
  int i;
  char str[256] = "12345"; //исходное число в виде строки
  i = atoi(str);    //результат
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.06.2013, 12:05
Привет! Вот еще темы с ответами:

Создать класс Date – дата, содержащая поля: день, месяц, год. - C++
Создать класс Date – дата, содержащая поля: день, месяц, год. Определить операторы &quot;+&quot; и &quot;-&quot;, как методы класса, а &quot;++&quot; и &quot;--&quot; в обеих...

Дана дата в формате день:месяц:год. Определить дату через n дней - C++
Дана дата в формате день:месяц:год. Определить дату через n дней. Помогите написать программу, желательно полный код.

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

Класс "Дата": день, месяц, год - C++
Класс Date хранит информацию об определенной дате (дд-мм-гг) для чего в нем предустмотрен поля day,mounth,year: Метод Date::sethate() -...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.06.2013, 12:05
Ответ Создать тему
Опции темы

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