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

Заменить самое длинное слово на самое короткое и наоборот - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить площать S, радиус R треугольника, если заданы сторона, угол, радиус описанного круга http://www.cyberforum.ru/cpp-beginners/thread867365.html
в треугольнике заданы сторона b, угол А радиус описаного круга R. Вычеслить и вывести на экран все остальные лементы треугольника площать S, радиус R. Треугольник так же вывести на экран. Заданые параметры вводить с клавиатуры.
C++ Удаление элементов массива #include<iostream> #include <cstdlib> using namespace std; bool Delete(int *Array, int &SizeArrray, int num); int main() { int size; cout << "Size of Massiv: "; cin >> size; int *Massiv = new int ; http://www.cyberforum.ru/cpp-beginners/thread867355.html
Разработать программу выполнения вычисления функции f(x) = ax/b C++
Кто может напишите плз!!!:Разработать программу выполнения вычисления функции f(x) = ax/b
C++ Односвязный список. Подсчитать сумму N первых элементов. Удалить эти элементы и вставить в конец списка
Помогите, плиз доработать функцию summ - она должна подсчитать сумму N первых элементов. Удалить эти элементы и вставить в конец списка. #include <iostream> #include <time.h> using namespace std; struct list { int value; list* next;
C++ Вывести все целочисленные элементы массива http://www.cyberforum.ru/cpp-beginners/thread867343.html
помогите пожалуйста с задачей: дан массив С. Вывести все целочисленные значения этого массива. Не знаю как именно вывести целочисленные значения.
C++ передача массива классов в метод класса 1. этап. Разработать библиотеку функций(h-файл) для выполнения: – чтения базы данных из файла; //read() – печати на экран; //print() – добавления и удаления строк базы данных; //add(), del() – записи базы данных в файл; //record() – сортировка по вычисляемому полю.//sort() 2 этап. Создать класс на основе структуры в предыдущей лабораторной работе удаление строки я собираюсь... подробнее

Показать сообщение отдельно
Olivеr
 Аватар для Olivеr
411 / 407 / 13
Регистрация: 06.10.2011
Сообщений: 830
16.05.2013, 21:35     Заменить самое длинное слово на самое короткое и наоборот
Всегда лучше использовать string.
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
#include <iostream>
#include <string>
#include <sstream>
 
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE, "");
    string text;
    getline(cin, text);
    stringstream ss(text);
 
    string word, longest_word, shortest_word(100, ' ');
 
    while ( ss >> word ) {
        if ( word.size() < shortest_word.size() )
            shortest_word = word;
        if ( word.size() > longest_word.size() )
            longest_word.swap(word);
    }
    
    if (shortest_word != longest_word) {
        size_t longest_word_pos = text.find(longest_word),
               shortest_word_pos = text.find(shortest_word);
 
        text.replace( longest_word_pos, longest_word.size(), shortest_word );
        if ( shortest_word_pos > longest_word_pos )
            shortest_word_pos -= (longest_word.size() - shortest_word.size());
        text.replace( shortest_word_pos, shortest_word.size(), longest_word );
    }
    cout  << text;
    return 0;
}
 
Текущее время: 07:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru