![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Tri |
![]()
Сообщение
#1
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 94 Регистрация: 26.10.2007 Город: Тюмень Учебное заведение: ТГНГУ Вы: студент ![]() |
Составить программу, которая считывает произвольный текст и распечатывает в алфавитном порядке все латинские буквы, входящие в этот текст. В качестве основной структуры данных использовать стек.
Я совсем недавно начала изучать ООП, так что работу с классами совсем не знаю, у меня компил. ругается как раз на классе (IMG:style_emoticons/default/unsure.gif) Посмотрите, пожалуйста, моё решение. Код // 2_1.cpp : Defines the entry point for the console application. #include "stdafx.h" #include <fstream> #include <iostream> #include <string> #include <cstring> #include <stdlib.h> using namespace std; class Stack {private: static const int MAX = 80; int st[MAX]; int top; public: Stack( ); {top=0;} void push (int var) {st[++top]=var;} int pop( ) {return st[top--];} }; int _tmain(int argc, _TCHAR* argv[]) {Stack s1; const int MAX=80; char buffer[3][MAX]; int i=0; int x,j,dlina,k;char z; ifstream infile("input.txt"); while (!infile.eof()) {infile.getline(buffer[i],MAX); cout << buffer[i] << endl; i++; //считали данные в массив строк }; k=0;dlina=0; for (i=0;i<3;i++) {x=strlen(buffer[i]);dlina=dlina+x; for (j=0;j<=x;j++) //данные из массива помещаем в стек {s1.push(buffer[i][j]);k++;}; }; for (z='A';z<='Z';z++) {for (i=0;i<=k;i++) //выводим данные из стека в алфавитном порядке {if ((s1.pop()==z)||(s1.pop()==(z+32))){cout << s1.pop() << endl << "\n";}; }; }; return 0; } |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 16:23 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru