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

С консоли вводится список слов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Пример графики DOS http://www.cyberforum.ru/cpp-beginners/thread134409.html
Привет! Незнаю может у кого-нибудь есть ЛЮБАЯ графика на СИ! тоесть что то нарисованное на СИ киньте пожалуйста код! Не получаеться самому рисовать!
C++ Укажите на ошибку =) Подскажите, почему в данной программе не работает должным образом метод удаления? #include <iostream.h> #include <conio.h> #include <stdio.h> #include <fstream.h> #include <iomanip.h> #define n 3 class los http://www.cyberforum.ru/cpp-beginners/thread134408.html
C++ Строки
дана строка символов. удалить из нее все кратные рядом стоящие одинаковые символы, оставив по одному (АААВВВССС->ABC)
работа с матрицами C++
задача: характеристикой столбца целочисленной матрицы назовем сумму элементов являющихся простыми числами. упорядочить столбцы матрицы по убыванию их характеристик. исходник: #include <iostream.h> #include <stdio.h> #include <conio.h> int main() {int a,b,i,j,l,sm,x,y, n, m ; cout<<"N= "; cin>>n; cout<<"M= "; cin>>m;
C++ Функция - Reverse(s). http://www.cyberforum.ru/cpp-beginners/thread134394.html
Помогите, нужен пример Функция - Reverse(s). Назначение - изменение порядка символов в строке s на противоположный.
C++ Создание не рекурсивной функции с использованием стека Написать не рекурсивную функцию, которая используя стек, вычисляет значение f(m,n) для любой пары неотрицательных чисел n и m по отношению f(m,n)= m+n+1, если m*n=0, и f(m,n)= f(m-1,f(m,n-1)), если m*n !=0 Добавлено через 17 часов 22 минуты вот сама рекурсия на с++ #include <conio.h> #include <iostream.h> f(); подробнее

Показать сообщение отдельно
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
23.05.2010, 23:35     С консоли вводится список слов
Примерное решение
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
#include <iostream>
#include <string>
using namespace std;
 
const int LEN_STR = 400;
struct Node {
char m_BUFF[LEN_STR];
Node *next;
};
 
static long SIZE_STACK = 0;  
 
void push(Node **const top, const char *buff);
void pop(Node**const top, char*buff);
void pop(Node**const top);
void Update(Node**const top){ while(*top)pop(top); }
 
int main(){
Node *top = NULL;
char tmpBUFF[LEN_STR];
 
while(true){
cout<<"Input str: "; cin>>tmpBUFF;
push(&top,tmpBUFF);
 
string obj;
cout<<"continue? yes or no: "; cin>>obj;
if(obj=="no")break;
}
 
cout<<endl;
//--------------------------------------------------------
int H = SIZE_STACK;
int W = LEN_STR;
//--------------------------------------------------------
char **matrix = new char*[H];   
for( int u = 0 ; u < H ; u++ )matrix[u]=new char[W];
//--------------------------------------------------------
 
 
for( int k = 0 ; k < H ; k++ ){ pop(&top,tmpBUFF); strcpy(matrix[k],tmpBUFF); }
cout<<"Print Matrix\n\n";
for( int r = 0 ; r < H ; r++ )cout<<"str: "<<matrix[r]<<endl;
 
 
 
 
for( int p = 0 ; p < H ; p++ )delete[]matrix[p];
delete[]matrix;
Update(&top);
return 0;
}
 
void push(Node **const top, const char *buff){
    if((*top)==NULL){
    Node *pv = new Node;
    pv->next = NULL;
    strcpy(pv->m_BUFF,buff);
    (*top)=pv;
    SIZE_STACK++;
    return ;
    }
    else {
    Node *pv = new Node;
    pv->next = (*top);
    strcpy(pv->m_BUFF,buff);
    (*top) = pv;
    SIZE_STACK++;
    return ;
    }
 
}
void pop(Node**const top, char*buff){
Node *pv = (*top);
if(pv){ strcpy(buff,pv->m_BUFF); (*top)=(*top)->next; delete pv; SIZE_STACK--; }
}
void pop(Node**const top){
Node *pv = (*top);
if(pv){  (*top)=(*top)->next; delete pv; SIZE_STACK--; }
}

Если пользователь вводит неограниченное количество строк, значит речь скорее всего
идет о динамических структурах данных, выше представлена реализация через
стек.
Только не вводить пробелы в словах, иначе будет не правильно работать.

В программе после очередного ввода строки, спрашивается закончить ввод да или нет.
Надеюсь вам это решение поможет.
 
Текущее время: 14:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru