Строки.

Тема в разделе "Общие вопросы по С и С++", создана пользователем Juiset, 3 апр 2014.

  1. Juiset

    Juiset New Member

    Регистрация:
    3 апр 2014
    Сообщения:
    1
    Симпатии:
    0
    Написать программу, которая:
    • Выводит текст на экран дисплея;
    • Определяет количество символов в кратчайшем слове;
    • По нажатию произвольной клавиши поочередно выделяет каждое слово текста, содержащий минимальное количество символов.
    Вод код, но 3 условия тут не выполняется, как его сделать ?
    Помогите пожалуйста.

    Program.cpp
    Код (C++):
    #include "IVN_LB8_heder.h"
    #include "IVN_LB8_save.h"

    void dlina(string str);

    int main()
    {
    setlocale (0,"RUS");
    string str;



    ifstream MyFile("C:\\Users\\Ramzes30021\\Desktop\\Lr21\\Lr2\\input.txt");
    if(!MyFile){cout<<"oops, file not found";return 0;}
    while (!MyFile.eof())
    {getline (MyFile,str);
    MyFile.get();
    cout<<str;
    dlina(str);}
    return 0;
    }
    Includ.h

    Код (C++):
    #include <iostream>
    #include <conio.h>
    #include <fstream>
    #include <string>
    using namespace std
    Stroka.h

    Код (C++):
    void dlina(string str)
    {
    int min=100; int l=0; int nn=0;
    for(int i=0; i<str.size();i++)
    {
    if(str[i]!=' ' && str[i]!='.' && str[i]!=',')
    nn++;
    else
    {
    if(nn<min && nn!=0 )
    {
    min=nn;
    }
    nn=0;
    }
    }
    string str1="(=)";
    getch();
    system("cls");
    for(int i=1; i<str.size();i++)

    {

    if(str[i]!=' ' && str[i]!='.' && str[i]!=',')
    {
    nn++;
    }
    else
    {
    if(nn==min)
    {    
    str.insert (i-min, str1);
    str.insert(i+3, str1);

    }

    nn=0;
    }
    }

    cout<<str<<endl;
    cout<<"Количество символов в самом меньшем слове "<<min<<endl;
    }
     
Загрузка...

Поделиться этой страницей