Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86

Английский текст из файла

20.06.2010, 22:49. Показов 790. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые программисты, помогите пожалуйста с написанием программы.

Написать программу которая считывает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв.

Добавлено через 6 часов 48 минут
Вот что то получилось у меня...
А как теперь сделать чтоб с файла считывался только английский текст?

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
# include <stdio.h>
# include <conio.h>
# include <vcl>
# define n 80
int Vs(char *s,char *sl, int d);
int count(char s[n]);
main()
{
    char *ss[n],text[n];
    int k,l;
    char ch, *p;
        FILE *f;
        f=fopen(".\\Text.txt", "r");
        fgets( text, n , f );
    puts("Inputing text:  ");
    puts(text);
    k=0;l=0;
    while (text[l]!='\n'&&text[l]!='\0'&&l<n)
    {
        ch=text[l];
        if (ch!= ' '&&ch!='\t')
        {
            ss[k]=new char[n];
            l+=Vs(ss[k],&text[l],n);
            k++;
        }
        else l++;
    }
    puts("Massiv slov\n");
    for(int i=0; i<k; i++)puts(ss[i]);
 
        char *word[n];
        int kol = 0;
        for(int i=0; i<k; i++){
        if (ss[i][i] == *"i"||ss[i][0] ==* "a"||ss[i][0] == *"e"||ss[i][0] == *"y"||ss[i][0] ==* "u"||ss[i][0] ==* "o")
        {word[kol] = ss[i];
        kol++;      }          }
 
        puts("Massiv slov na4 s glasnoy: \n");
    for(int i=0; i<kol; i++)puts(word[i]);
 
 
    getch();
    return 0;
}
int Vs(char *s,char *sl, int d)
{
    int i,N;
    N=0;
    while (*sl!=' '&& *sl!='\0'&&*sl!='\t'&&*sl!='\n')
    {
        *s=*sl;
        s++;
        sl++;
        N++;
    }
    for(i=N;i<d;i++)
    {
        *s='\0';
        s++;
    }
    return N;
}
Добавлено через 21 час 57 минут
Ну поможет кто ни будь?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.06.2010, 22:49
Ответы с готовыми решениями:

Английский текст из файла
Здравствуйте! Не могли бы вы помочь с задачей? Вот условие - Написать программу, которая считывает английский текст из файла и выводит на...

Считать английский текст из файла и вывести его на экран
Здравствуйте! Не подскажите,как сделать,что бы с файла считывает английский текст и выводит его на экран,заменив каждую первую букву в...

Написать программу, которая считывает английский текст из файла
Написать программу, которая считывает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв. Если можно , то...

8
98 / 94 / 16
Регистрация: 16.05.2010
Сообщений: 310
20.06.2010, 23:25
Не могу разобрать что у вас написано, но советом помогу
Можно использовать Ansi кодировку символа. То есть если символ превышает значение в 191, то он не считывается.
Пример проверки:
if(int(text[i])<191)
0
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
21.06.2010, 00:51  [ТС]
Попробовал, не получается так ..
0
98 / 94 / 16
Регистрация: 16.05.2010
Сообщений: 310
21.06.2010, 01:22
Почитайте здесь: строки и множества в С
может посмотреть как там и сделать наоборот
0
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
21.06.2010, 04:06  [ТС]
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
// laba5.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
 
 
# include <stdio.h>
# include <conio.h>
# include <locale>
# define n 100
 
int Vs(char *s,char *sl, int d);
int main()
{   setlocale (LC_ALL, "Russian");
    char *ss[n],text_all[n],text[n];
    int k,l;
    char ch, *p;
        FILE *f;
        f=fopen(".\\Text.txt", "r");
        fgets(text_all, n , f );
        int kol_eng=0;
        for(int i=0; i<n; i++) {
 
        if ((text_all[i]=='q')||(text_all[i]=='w')||(text_all[i]=='e')||(text_all[i]=='r')||(text_all[i]=='t')||(text_all[i]=='y')||(text_all[i]=='u')||(text_all[i]=='i')||(text_all[i]=='o')||(text_all[i]=='p')||
    (text_all[i]=='a')||(text_all[i]=='s')||(text_all[i]=='d')||(text_all[i]=='f')||(text_all[i]=='g')||(text_all[i]=='h')||(text_all[i]=='j')||(text_all[i]=='k')||(text_all[i]=='l')||(text_all[i]=='z')||(text_all[i]=='x')||(text_all[i]=='c')||(text_all[i]=='v')||(text_all[i]=='b')||(text_all[i]=='n')||(text_all[i]=='m')||
        (text_all[i]=='Q')||(text_all[i]=='W')||(text_all[i]=='E')||(text_all[i]=='R')||(text_all[i]=='T')||(text_all[i]=='Y')||(text_all[i]=='U')||(text_all[i]=='I')||(text_all[i]=='O')||(text_all[i]=='P')||
    (text_all[i]=='A')||(text_all[i]=='S')||(text_all[i]=='D')||(text_all[i]=='F')||(text_all[i]=='G')||(text_all[i]=='H')||(text_all[i]=='J')||(text_all[i]=='K')||(text_all[i]=='L')||(text_all[i]=='Z')||(text_all[i]=='X')||(text_all[i]=='C')||(text_all[i]=='V')||(text_all[i]=='B')||(text_all[i]=='N')||(text_all[i]=='M')||(text_all[i]==' ')||(text_all[i]=='\t'))
        {
        text[kol_eng] = text_all[i];
        kol_eng++;}}
 
    puts("Английский текст с файла:  \n");
    puts(text);
    k=0;l=0;
    while (text[l]!='\n'&&text[l]!='\0'&&l<n)
    {
        ch=text[l];
        if (ch!= ' '&&ch!='\t')
        {
            ss[k]=new char[n];
            l+=Vs(ss[k],&text[l],n);
            k++;
        }
        else l++;
    }
 
        char *word[n];
        int kol = 0;
        for(int i=0; i<k; i++){
        if (ss[i][0] == *"i"||ss[i][0] ==* "a"||ss[i][0] == *"e"||ss[i][0] == *"y"||ss[i][0] ==* "u"||ss[i][0] ==* "o")
        {word[kol] = ss[i];
        kol++;      }          }
 
        puts("\nСлова начинающиеся с гласной буквы: \n");
    for(int i=0; i<kol; i++)puts(word[i]);
 
 
    getch();
    return 0;
}
int Vs(char *s,char *sl, int d)
{
    int i,N;
    N=0;
    while (*sl!=' '&& *sl!='\0'&&*sl!='\t'&&*sl!='\n')
    {
        *s=*sl;
        s++;
        sl++;
        N++;
    }
    for(i=N;i<d;i++)
    {
        *s='\0';
        s++;
    }
    return N;
}
Вот так вот выводит английский текст, но почему то ещё символы появляются которых нет в файле...
0
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
21.06.2010, 04:17  [ТС]
Вот скрин:
Миниатюры
Английский текст из файла  
0
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
21.06.2010, 15:04  [ТС]
Неужели на форуме нет программистов...
0
98 / 94 / 16
Регистрация: 16.05.2010
Сообщений: 310
21.06.2010, 18:06
Вроде бы символ М означает просто отсутствие информации в ячейке.
Проверте, возможно вы не добавляете символ окончания строки '\n'. Либо не вводите ограничение вывода текста на экран
1
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
21.06.2010, 20: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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#include "stdafx.h"
# include <stdio.h>
# include <conio.h>
# include <locale>
# define n 90
 
int Vs(char *s,char *sl, int d);
int main()
{       setlocale (LC_ALL, "Russian");
        char *ss[n],text[80]="none";
        int k,l;
        char ch, *p;
 
FILE *file;
char* file_name = "file.txt";
char text_all[n] = "none";
 
 
file = fopen( file_name, "r" );
if( file != 0 )
{
fgets( text_all, n , file );
puts("ВСЁ СОДЕРЖИМОЕ ФАЙЛА: ");
puts(text_all);
}
else
{
printf("File not found !!!");
}
fclose(file);
 
        int kol_eng=0;
        for(int i=0; i<n; i++) {
 
        if ((text_all[i]=='q')||(text_all[i]=='w')||(text_all[i]=='e')||(text_all[i]=='r')||(text_all[i]=='t')||(text_all[i]=='y')||(text_all[i]=='u')||(text_all[i]=='i')||(text_all[i]=='o')||(text_all[i]=='p')||
        (text_all[i]=='a')||(text_all[i]=='s')||(text_all[i]=='d')||(text_all[i]=='f')||(text_all[i]=='g')||(text_all[i]=='h')||(text_all[i]=='j')||(text_all[i]=='k')||(text_all[i]=='l')||(text_all[i]=='z')||(text_all[i]=='x')||(text_all[i]=='c')||(text_all[i]=='v')||(text_all[i]=='b')||(text_all[i]=='n')||(text_all[i]=='m')||
        (text_all[i]=='Q')||(text_all[i]=='W')||(text_all[i]=='E')||(text_all[i]=='R')||(text_all[i]=='T')||(text_all[i]=='Y')||(text_all[i]=='U')||(text_all[i]=='I')||(text_all[i]=='O')||(text_all[i]=='P')||
        (text_all[i]=='A')||(text_all[i]=='S')||(text_all[i]=='D')||(text_all[i]=='F')||(text_all[i]=='G')||(text_all[i]=='H')||(text_all[i]=='J')||(text_all[i]=='K')||(text_all[i]=='L')||(text_all[i]=='Z')||(text_all[i]=='X')||(text_all[i]=='C')||(text_all[i]=='V')||(text_all[i]=='B')||(text_all[i]=='N')||(text_all[i]=='M')||(text_all[i]==' '&&text[kol_eng-1]!=' ')||(text_all[i]=='\t'))
        {
        text[kol_eng] = text_all[i];
        kol_eng++;}}
 
        puts("\n\nАНГЛИЙСКИЙ ТЕКСТ С ФАЙЛА: ");
        puts(text);
 
        k=0;l=0;
        while (text[l]!='\n'&&text[l]!='\0'&&l<n)
        {
                ch=text[l];
                if (ch!= ' '&&ch!='\t')
                {
                        ss[k]=new char[n];
                        l+=Vs(ss[k],&text[l],n);
                        k++;
                }
                else l++;
        }
 
        char *word[n];
        int kol = 0;
        for(int i=0; i<k; i++){
        if (ss[i][0] == *"i"||ss[i][0] ==* "a"||ss[i][0] == * "e"||ss[i][0] == * "y"||ss[i][0] ==* "u"||ss[i][0] ==* "o")
        {word[kol] = ss[i];
        kol++;      }          }
 
        puts("\n\nСЛОВА НАЧИНАЮЩИЕСЯ С ГЛАСНОЙ:");
       for(int i=0; i<kol; i++)puts(word[i]);
 
 
        getch();
        return 0;
}
int Vs(char *s,char *sl, int d)
{
        int i,N;
        N=0;
        while (*sl!=' '&& *sl!='\0'&&*sl!='\t'&&*sl!='\n')
        {
                *s=*sl;
                s++;
                sl++;
                N++;
        }
        for(i=N;i<d;i++)
        {
                *s='\0';
                s++;
        }
        return N;
}
Ну наконец...
Вот в чем была часть проблемы
C++
1
2
char text[n];   //  в таком случае появляются символы...
char text[n] = "none"; // вот так надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.06.2010, 20:04
Помогаю со студенческими работами здесь

Прочитать английский текст из файла и вывести на экран слова текста
Написать программу, которая считывает английский текст из файла и выводит на экран слова текста, начинающиеся и оканчивающиеся на гласные...

Считать английский текст из файла и вывести его на экран (произведя замену)
Написать программу, которая считывает английский текст из файла и выводит его на экран, заменив каждую первую букву слов, начинающихся с...

Считать английский текст из файла и вывести на экран слова, начинающиеся с гласных букв
программа , которая считает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв!!! Помогите исправить...

Написать программу, которая считывает английский текст из файла и выводит его на экран
Добрый день, у меня такая проблема, есть такое задание :Написать программу, которая считывает английский текст из файла и выводит его на...

Считать английский текст из файла и вывести на экран слова, начинающиеся с гласных букв
Написать программу, которая считывает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв.


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru