• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[C++] Wczytywanie dat

0 głosów
90 wizyt
pytanie zadane 10 września w C i C++ przez mm Początkujący (250 p.)

Cześć!

W jaki sposób można zaimplementować takie coś:

Napisz program, który wczytuje ze standardowego wejścia datę w formacie DD-MM-RRRR  

Tak ma wyglądać to wejście:

Przykład:

07-04-2018
08-04-2018
09-04-2018
10-04-2018
11-04-2018
12-04-2018
13-04-2018
40-04-2018
12-15-2018
29-02-2018

Oczywiście mogą być inne daty.

Dzięki za odpowiedź

komentarz 10 września przez tkz Mądrala (6,580 p.)
std::cin>>dzien>>miesiac>>rok;

std::cout<<dzien<<"-"<<miesiac<<"-"<<rok;
komentarz 10 września przez mm Początkujący (250 p.)
Ok, tylko ja mam wczytać kilka dat, a taką metodą będę mogła wczytać tylko jedną.
2
komentarz 10 września przez tkz Mądrala (6,580 p.)
#include <iostream>
#include <string>

int main()
{
  std::string d,m,r;
    while(std::cin>>d>>m>>r)
        std::cout<<d<<"-"<<m<<"-"<<r<<"\n";
}

komentarz 10 września przez mm Początkujący (250 p.)
Nie o to mi chodziło, ja chciałabym wczytać daty bezpośrednio przez cin>>, a nie tak, że dopiero po tym jak wczytam te trzy wartości.

Chce od razu wczytać ciąg tych dat
komentarz 10 września przez tkz Mądrala (6,580 p.)
std::string data; std::cin>>data; //01-01-2019 i robisz co chcesz

2 odpowiedzi

+3 głosów
odpowiedź 10 września przez mokrowski VIP (111,180 p.)
#include <iostream>
#include <iomanip>
#include <ctime>

int main() {
    std::tm myTime;
    std::cin >> std::get_time(&myTime, "%d-%m-%Y");
    std::cout << "Date: " << std::put_time(&myTime, "%c") << '\n';
}

 

komentarz 10 września przez maselo93 Użytkownik (820 p.)
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>

using namespace std;

int main()
{

	fstream plik;
	plik.open("daty.txt", ios::in); 
	if (plik.good())
	{
		string napis;
		cout << "Zawartosc pliku:" << endl;
		while (!plik.eof())
		{
			getline(plik, napis);
			cout << napis << endl;

		}
		plik.close();
	}
	else 
		cout << "Nie udalo otworzyc sie pliku!" << endl;
}

 rozumiem, że masz te daty w formacie .txt w notatniku

komentarz 11 września przez j23 VIP (106,380 p.)

@maselo93: Jak Twój post ma się do odpowiedzi mokrowskiego?

Popraw pętlę, bo teraz (zawsze) będziesz miał dodatkową pustą linię na końcu:

while (std::getline(plik, napis)) {
    std::cout << napis << '\n';
}

 

 

0 głosów
odpowiedź 10 września przez Inn Obywatel (1,120 p.)
Cześć

Możesz zrobić zmienna pomocniczą znak i wczytywać dane w ten sposób :
cin >> dzien >> znak >> miesiac >> znak >> rok

Podobne pytania

0 głosów
3 odpowiedzi 87 wizyt
pytanie zadane 30 kwietnia w C i C++ przez seba Dyskutant (8,730 p.)
0 głosów
1 odpowiedź 75 wizyt
pytanie zadane 20 marca w SQL, bazy danych przez kacper1445 Gaduła (3,130 p.)
0 głosów
0 odpowiedzi 73 wizyt
Porady nie od parady
Wynikowy wygląd pytania, odpowiedzi czy komentarza, różni się od tego zaprezentowanego w edytorze postów. Stosuj więc funkcję Podgląd posta znajdującą się pod edytorem, aby upewnić się, czy na pewno ostateczny rezultat ci odpowiada.Podgląd posta

66,495 zapytań

113,266 odpowiedzi

239,870 komentarzy

46,633 pasjonatów

Przeglądających: 263
Pasjonatów: 5 Gości: 258

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...