С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Найти порядковый номер слова максимальной длины - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определите класс дробей. Определите класс дробей http://www.cyberforum.ru/cpp-beginners/thread593294.html
Привет всем, подходит время сессии) должки нужно закрывать нужно решить гиганское количество задач по c++ на классы, кто хорошо разбирается помогитееее : Определите класс дробей - рациональных...
C++ Посчитать частоту появления ключевых слов в программе (порядок решения) Ребят, помогите с написанием курсовой. Надо, только, порядок решения написать. Вот задача - Подсчитать частоту появления ключевых слов в программе. Прога, соответственно, на си++, но это не важно... http://www.cyberforum.ru/cpp-beginners/thread593281.html
Написать программу,обрабатывающую информацию о владельцах ( C++
Составить программу, обрабатывающую следующую информацию о владельцах телефонов: фамилия абонента, год установки телефона, номер телефона, адрес абонента. Программа должна по запросу пользователя...
C++ Неправильный ввод вложенного списка(скриншот + текст программы)
Неправильный ввод вложенного списка #include <iostream> #include <windows.h> using namespace std; struct OneS { int data; OneS *next;
C++ Вывод вектора ax+b http://www.cyberforum.ru/cpp-beginners/thread593264.html
Программа решает систему методом зейделя, помогите пожалуйста в завершающей точке вывести вектор ах-б :) //#include "stdafx.h" #include <iostream>//i/o #include <conio.h> //getch ...
C++ Хелп по проге Всем привет. делаю прогу и никак не могу понять, в чем дело. Есть массив А, присваиваю массиву Б элементы массива А в квадрате, потом нужно найти наибольший элемент в массиве Б и вывести номер.... подробнее

Показать сообщение отдельно
embedgs
1 / 1 / 1
Регистрация: 17.05.2012
Сообщений: 3
01.06.2012, 15:04
Может помогу, заодно прошу и для себя критики.
Программа определяет порядковый номер слов с максимальным количество символов из файла, подставляемого аргументом в командной строке
*При разработке учтен лишь тот вариант, в котором между словами один пробел

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
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main(int argc, char* argv[])
{
 if (argc != 2) cout << "\nError, need 1 argument = your file name";
 else
    {
    ifstream infile;
    infile.open(argv[1]);
    if (!infile) cerr << "\nError in file";
 
    unsigned int wordNumber = 1;  //Считаем количество слов
    unsigned int charCounter = 0; //Считаем количесвто символов в слове
    char ch;                      //Переменная буфер для посимвольного извлечения из файла
 
    while(infile)                 //определяем количество слов по пробелам
    {
        infile.get(ch);
        if (ch == ' ') wordNumber++;
    }
    infile.clear();
    infile.seekg(0, ios::beg);    //возвращаемся в начало файла
 
    unsigned int SizeWords[wordNumber];     //создаем массив только для нужного кол-ва слов
 
    cout << "\nIn file words number is " << wordNumber << endl; //столько слов насчитали
    wordNumber = 0;
    while(infile)
    {
        infile.get(ch);
        if ((ch == ' ') || (ch == '\n'))    //если пробел или переход на новую строку
        {
            SizeWords[wordNumber] = charCounter;    //запоминаем количество символов в слове wordNumber
            charCounter = 0;
            wordNumber++;
        } else charCounter++;
 
 
    }
 
    infile.close();             //файл больше не нужен, закрываем
 
    unsigned int buf = 0;
 
    for (int i=0;i<wordNumber;i++)  //ищем максимальное количество символов
    {
        if (buf < SizeWords[i]) buf = SizeWords[i];
    }
 
    for (int i=0;i<wordNumber;i++)  //выводим порядковые номера самых больших слов
    {
        if (buf == SizeWords[i]) cout << "\nNumber of biggest word is " << i+1;
    }
 }
 
    cout << "\nPress Enter to exit";
    getchar();
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.