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

Определить номер той строки, в которой больше всего согласных букв - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
oleska
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
11.01.2012, 23:19     Определить номер той строки, в которой больше всего согласных букв #1
Переведите, пожалуйста:
Pascal
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
Uses
 CRT;
Var
 f,f2:text;
 s,s2:string;
 i,l,n1,n2,n,max,ind,c:integer;
begin
Assign(f,'D:\1.txt');
Assign(f2,'D:\2.txt');
reset(f);
rewrite(f2);
repeat
 write('ввод номеров строк: ');
 readln(n1,n2);
 if n1>n2 then
  write('Повторите ');
until n1<n2;
n:=0;
max:=-1;
ind:=0;
c:=0;
repeat
 readln(f,s);
 inc(n);
 if ((n1<=n) and (n2>=n)) and (s[1]='А') then  //убрать = если именно не включая эти строки
 begin
  writeln(f2,s);
  l:=0;
  for i:=1 to length(s) do
  if UpCase(s[i]) in ['Б','В','Г','Д','Ж','З','Й','К'..'Н','П'..'Т','Ф'..'Щ'] then
   inc(l);
  writeln(s);
  inc(c);
  if l>max then
  begin
   max:=l;
   s2:=s;
   ind:=c;
  end;
 end;
until eof(f);
Close(f);
Close(f2);
writeln;
write('Строка " ',s2,' " с номером:=',ind);
readkey
end.
Добавлено через 17 минут
Забыла написать задание .Оно выглядит так
1) Скопировать из файла F1 в файл F2 все строки, начинающиеся на букву «А» и расположенные между строками с номерами N1 и N2.
2) Определить номер той строки, в которой больше всего согласных букв, файла F2.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2012, 23:19     Определить номер той строки, в которой больше всего согласных букв
Посмотрите здесь:

C++ Дан двумерный массив. Найти номер строки, где больше всего нулей.
C++ Определить каких букв больше в строке: гласных или согласных и на сколько.
C++ Определить, в которой из двух очередей больше согласных букв
1. Скопировать из файла F1 в файл F2 строки, которые не содержат слова, начинающиеся на одну букву 2. Определить номер слова в котором больше всего г C++
Определить номер слова в котором больше всего гласных букв C++
Массив: Найти номер строки матрицы, в которой больше всего единичных элементов. C++
C++ Определить номер строки, в которой находится минимальный член матрицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Whiteha
Программист
33 / 33 / 4
Регистрация: 08.07.2011
Сообщений: 190
Записей в блоге: 1
11.01.2012, 23:50     Определить номер той строки, в которой больше всего согласных букв #2
Первое задание примерно так(это не перевод):
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
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
using namespace std;
 
const char *fname1 = "F1.txt";
const char *fname2 = "F2.txt";
 
int copy_to_f2(vector <string> str, int N1, int N2)
{
    ofstream file2(fname2);
    for (int i = 0; i < str.size(); i++)
    {
        if ((i <= N1 && i >= N2) && (str.at(i).at(0) == 'A')) file2 << str.at(i) << endl;
    }
    file2.close();
    return 0;
}
 
int main()
{
    setlocale(LC_ALL, "");
    vector <string> str;
    char max_string_size[300];
    ifstream file1(fname1);
 
    int N1, N2;
 
    if (file1)
    {
        int i = 0;
        while (!file1.eof())
        {
            file1.getline(max_string_size, 300, '\n');
            str.push_back(max_string_size);
            //cout << str.at(i) << endl; 
            i++;
        }
        cout << "Введите границу сверху N1(<=" << str.size() << "): "<< endl;
        cin >> N1;
        cout << "Введите границу снизу N2(>=0): " << endl;
        cin >> N2;
        copy_to_f2(str, N1, N2); // 1е задание
    }
    else
    {
        cout << "Ошибка, файл не найден." << endl;
    }
    file1.close();
    system("pause");
}
oleska
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
12.01.2012, 00:02  [ТС]     Определить номер той строки, в которой больше всего согласных букв #3
большое спасибо.. но у меня не видит русских букв не подскажите что можно сделать?
я написала латиницей в файл f1.txt
V lesy rodilas elochka,
V lesy ona rosla,
Zimoy i letom stroinaya ,
Zelenaya bila.
Metel ei pela pesenky:
Spi, elochka, bau-bai!
Moroz skijkom ykytival:
Smotri, ne zamerzai!
Trusiwka zaika serenkiy
Pod elo4koy skakal.
Porou volk, serditiy volk,
Rischou probegal.
// Вообщем задаю строки а он не выдает согласных букв.
Whiteha
Программист
33 / 33 / 4
Регистрация: 08.07.2011
Сообщений: 190
Записей в блоге: 1
12.01.2012, 00:05     Определить номер той строки, в которой больше всего согласных букв #4
Цитата Сообщение от oleska Посмотреть сообщение
// Вообщем задаю строки а он не выдает согласных букв.
Это второе задание, я скинул вам решение по первому, оно то у вас работает?
oleska
1 / 1 / 0
Регистрация: 11.01.2012
Сообщений: 32
12.01.2012, 00:07  [ТС]     Определить номер той строки, в которой больше всего согласных букв #5
Цитата Сообщение от Whiteha Посмотреть сообщение
Это второе задание, я скинул вам решение по первому, оно то у вас работает?
да , спасибо , очень благодарна
Сергейййййййй
4 / 2 / 0
Регистрация: 12.01.2012
Сообщений: 30
27.01.2012, 15:21     Определить номер той строки, в которой больше всего согласных букв #6
Помогите пожалуйста решить задачу, вот она(она похожа на ету):
Нужно создать текстовый файл F1 не менее, чем из 10 строк и записать в него информацию
Выполнить задание.
При разработке алгоритма считать, что количество строк в исходном файле заранее неизвестно.
вот задание:
1) Скопировать из файла F1 в файл F2 все строки, кроме той строки, в которой больше всего гласных букв.
2) Напечатать номер этой строки.

Добавлено через 15 часов 33 минуты
ау,народ помогите...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.01.2012, 15:53     Определить номер той строки, в которой больше всего согласных букв
Еще ссылки по теме:

Определить слова, в которых больше гласных букв, чем согласных C++
C++ Определить, каких букв — гласных или согласных — больше в данном тексте
Строки. Найти слова, в которых гласных букв больше, чем согласных C++
C++ Определить номер строки в которой больше всего гласных букв
C++ Упорядочить по росту сумм элементов строк строки той матрицы, у которой больше нулевых строк

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
diagon
Higher
 Аватар для diagon
1921 / 1187 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
27.01.2012, 15:53     Определить номер той строки, в которой больше всего согласных букв #7
Цитата Сообщение от Сергейййййййй Посмотреть сообщение
2) Напечатать номер этой строки.
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
int num_of_str_with_max_count_of_consonants( std::istream& ist )
{
    const std::string consonants = "qwrtpsdfghjklzxcvbnmQWRTPSDFGHJKLZXCVBNM";
    
    std::string line;
    
    int max = 0, res = -1;
    
    for (int k = 0; std::getline(ist, line); ++k)
    {
        int count = 0;
        
        for (int i = 0; i < (int) line.size(); ++i)
            if ( consonants.find( line[i] ) != std::string::npos )
                ++count;
        
        if ( count > max )
        {
            max = count;
            res = k;
        }
    }
    
    return res + 1;
}
Пример использования
C++
1
2
3
4
5
int main()
{
    std::ifstream ifs("input.txt");
    std::cout << num_of_str_with_max_count_of_consonants( ifs );
}
Yandex
Объявления
27.01.2012, 15:53     Определить номер той строки, в которой больше всего согласных букв
Ответ Создать тему
Опции темы

Текущее время: 12:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru