Invite et reçoit une date de “MM/DD/YYYY” à l'aide de CIN, ignorant les caractères“/”? (en C++)

Oui, c'est une affectation. Je n'ai pas l'esprit de travail pour obtenir une réponse et je ne veux pas la réponse exacte! 🙂 C'est mon premier de la classe C++. Je suis venu dans cette classe avec l'accord préalable de la connaissance de VBA, MySql, CSS et HTML.

Nous sommes tenus d'écrire un programme avec plusieurs fonctions différentes. L'un d'entre eux est nécessaire pour recevoir la date d'entrée en "MM/DD/YYYY" format.
Alors que, en elle-même est assez facile, en tant que débutant, je voudrais juste poser

cin >> month >> day >> year;

Et insérez le "/" par la suite lors de l'affichage à l'utilisateur.

Cependant, je crois que notre professeur tiens à l'utilisateur d'entrer la date exactement de taper "12/5/2013", ou à toute autre date.

Par ses instructions:

La '/' peut être lu par cin. Afin de lire les '/' caractère et de l'ignorer. Régler le jour à l'égalité de la 3ème entrée, d'un mois à la première entrée, et l'année de la cinquième entrée. Jeter les 2ème et 4ème entrée.

^ C'est où j'en suis de plus en plus compromise.

Jusqu'à présent, nous avons uniquement l'expérience de cin lorsque l'utilisateur appuie sur entrée après chaque entrée. Donc je ne sais pas si il veut que l'utilisateur d'appuyer sur entrée après 12, puis de nouveau après '/', puis après 5, après le '/', et enfin après '2013' (à l'aide de l'exemple avant de 12/5/2013 pour le mois de décembre 5th, 2013).

Quelqu'un de plus expérimenté ont tout possible de comprendre ce que je devrais faire?
Nous avons seulement appris comment utiliser "cin" pour recevoir des entrées (donc nous n'en connaissons pas d'autres méthodes pour la réception des avis), et je n'ai aucune idée de la façon d'aller sur "ignorer le caractère" lors de la saisie comme une chaîne de caractères comme '12/5/2013' exactement.

J'apprécierais toute aide à ce!

edit: j'ai cherché des réponses ici, mais tous ceux que j'ai rencontré sont au-delà de la portée de ce que nous avons appris et ne sont donc pas autorisés dans l'affectation.
Alors que je peux aller sur la compréhension de la logique de plus à l'avance de codage assez facilement, je suis frustré de mon manque de capacité à résoudre ces plus simples à des problèmes avec une certaine facilité. D'où mon affectation ici. J'ai passé plusieurs heures à la numérisation de notre manuel pour les éventuelles réponses ou des indices à "ignorer" les caractères dans une chaîne d'entrée, mais ont peu.

J'aimerais le faire, mais nous n'avons pas d'être enseigné que, pour le moment, et malheureusement, il n'est pas permis.:( (Bien que, certes, c'est en me forçant d'aborder les choses d'une manière différente. Je suis sûr que la solution de notre prof est à la recherche est en fait assez simple. Comme j'ai tendance à l'overthink, je pense que c'est un bon exercice à l'autre.)
Aussi, je vous remercie Filip pour l'édition de mon post pour mieux afficher les infos. Est beaucoup mieux maintenant. 🙂
Il suffit d'ajouter un caractère temporaire et l'analyse. Puis faire un peu de vérification des erreurs pour voir si le caractère transmis est le bon séparateur (c'est à dire /). Le reste devrait être relativement simple à partir de là. Spoiler
Merci! Je ne suis vraiment pas sûr de ce que tu veux dire par le caractère temporaire et l'analyser? Nous devons d'entrée quelque chose exactement comme "12/5/2013", puis appuyez sur entrée. Je vois que votre CIN est accepter les trois entrées pour le MM, JJ, et YYYY séparément. Cependant, nous devons obtenir en quelque sorte la date comme un morceau de l'entrée et de séparer les mm, jj, et aaaa. Ignorant le "/" en quelque sorte. Nous n'avons même pas abordé sur les cordes dans la classe encore, ce que je trouve bizarre.
Le getline est une fonction membre de la classe istream et je pense que les classes de flux a fini pour plus d'informations, voir le lien dans mon sna

OriginalL'auteur Kaitlyn | 2014-06-30