0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
.NET 4.x

Вывести на экран предложения в обратном порядке

15.02.2012, 20:29. Показов 6552. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать программу, которая считывает текст из файла и выводит на экран его предложения в обратном порядке.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.02.2012, 20:29
Ответы с готовыми решениями:

Вывести на экран все предложения в обратном порядке
Помогите пожалуйста переписать код на С# #include <fstream> #include <iostream> #include <stack> #include <string> using...

Прочитать текст из файла и вывести на экран все его предложения в обратном порядке (С++ -> С#)
Помогите пожалуйста переписать этот код на С# #include <fstream> #include <iostream> #include <stack> #include...

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

20
 Аватар для WizarД
53 / 56 / 10
Регистрация: 07.02.2011
Сообщений: 556
Записей в блоге: 1
15.02.2012, 20:47
C#
1
2
3
4
5
6
7
8
string path = "C://text.txt";
StreamReader sr = new StreamReader(path);
string text = sr.ReadToEnd();
string[] predl = text.Split(new Char[] {'.'});
for (int i = predl.Length-1; i > 0; --i)
            {
                     Console.WriteLine(predl[i]);
            }
Исправил.
0
774 / 554 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
15.02.2012, 22:10
Цитата Сообщение от WizarД Посмотреть сообщение
C#
1
string[] predl = text.Split(new Char[] {'.'});
массив ради одного символа ?

C#
1
string[] predl = text.Split('.');
1
15.02.2012, 22:42

Не по теме:

Vitall, привычка)

0
774 / 554 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
15.02.2012, 22:42
В обратном порядке тока предложения, а сами символы в исходном порядке ?
C#
1
2
3
4
5
6
7
8
9
10
string path = "File.txt";
        StreamReader srr = new StreamReader(path);
        string text = srr.ReadToEnd();
        string[] predl = text.Split('.');
        Array.Reverse(predl);
        System.Collections.IEnumerator myEnumerator = predl.GetEnumerator();
        while (myEnumerator.MoveNext())
        {
            Console.WriteLine(myEnumerator.Current);
        }
0
87 / 73 / 6
Регистрация: 11.09.2011
Сообщений: 118
16.02.2012, 00:11
Vitall, a закрывать StreamReader? Да и вообще, зачем так извращатся с IEnumerator, если есть foreach?
C#
1
2
3
4
5
6
7
string path = "File.txt";
        using(StreamReader streamReader = new StreamReader(path)){
              string[] sentences = streamReader.ReadToEnd().Split('.');
              Array.Reverse(sentences);
              foreach(string sentence in sentences)
                    Console.WriteLine(sentence);
        }
0
774 / 554 / 80
Регистрация: 03.07.2011
Сообщений: 1,020
16.02.2012, 00:34
Цитата Сообщение от Niades Посмотреть сообщение
Да и вообще, зачем так извращатся с IEnumerator, если есть foreach?
Niades, Каждый день его раз по сто пишу надоело уже
А вот про ридер забыл
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
16.02.2012, 11:21
C#
1
2
3
4
5
IEnumerator<string> enumerator = File.ReadAllText(@"input.log").Split('.', '!', '?').Reverse().GetEnumerator();
while (enumerator.MoveNext())
{
    Console.WriteLine(enumerator.Current);
}
Еще такой вариант мин кода (:

Добавлено через 2 минуты
можно конечно и в 2 строки, если тело цикла явно не указывать, но так будет некрасиво
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
16.02.2012, 16:33  [ТС]
Тут задача лежит в том , чтобы вывести предложения в обратном порядке , т.е. 1 2 3 4 предложения должны быть 4 3 2 1.
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
16.02.2012, 22:08
В чем проблема? Не поняли как работает написанный выше код?
0
 Аватар для Celly
158 / 148 / 25
Регистрация: 23.01.2011
Сообщений: 319
19.02.2012, 12:50
C#
1
2
foreach (string str in System.IO.File.ReadAllLines("D:\\log.txt"))
    Console.WriteLine(str.ToArray<char>().Reverse().ToArray());
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
19.02.2012, 14:41  [ТС]
Дело в том , что выводит правильно , но знаки (. ! ?) не выводит...
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
22.02.2012, 20:56  [ТС]
Помогите ! Надо чтобы знаки препинания тоже выводило(((
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
22.02.2012, 21:51
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
 
class Program
{
    static void Main()
    {
        foreach (Match match in Regex.Matches(File.ReadAllText(@"D:\log.txt", Encoding.Default), @".*?[\.!\?]", RegexOptions.Singleline))
            Console.WriteLine(match.Value.Reverse().ToArray());
    }
}
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
23.02.2012, 23:31  [ТС]
а нельзя както по проще? я это не изучал пока что еще...
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
24.02.2012, 00:13
Dimmon5700, это самый простой вариант: считывание файла, регулярное выражение, перебор коллекции, переворачивание строки. Или надо регулярку заменить на конечный автомат? А ведь станет тогда еще сложнее.
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
24.02.2012, 00:18  [ТС]
Надо не то чтобы код был по меньше , а не было такого
C#
1
Regex.Matches(File.ReadAllText(@"D:\log.txt", Encoding.Default), @".*?[\.!\?]", RegexOptions.Singleline
я это не учил еще , а вот
C#
1
2
3
4
5
6
7
string path = "File.txt";
        using(StreamReader streamReader = new StreamReader(path)){
              string[] sentences = streamReader.ReadToEnd().Split('.');
              Array.Reverse(sentences);
              foreach(string sentence in sentences)
                    Console.WriteLine(sentence);
        }
подходит , только тут не выводит знаки . ! ?
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
24.02.2012, 00:47
Цитата Сообщение от Dimmon5700 Посмотреть сообщение
а не было такого
Чего такого? Вещи надо своими именами называть.
Допустим:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
 
class Program
{
    static void Main()
    {
        string file = File.ReadAllText(@"D:\log.txt", Encoding.Default);
        string pattern = @".*?[\.!\?]";
        MatchCollection collection = Regex.Matches(file, pattern, RegexOptions.Singleline);
        foreach (Match match in collection)
            Console.WriteLine(match.Value.Reverse().ToArray());
    }
}
Строка - Значение
11 - Считывание всего текста из файла.
12 - Шаблон для регулярного выражения, который находит минимальную длину символов, которая заканчивается на символы ".", "!" или "?".
13 - Собственно нахождение нужных предложений, где благодаря RegexOptions.Singleline игнорируется перевод на новую строку.
14 - Обход коллекции результатов.
15 - Переворачивается строка и выводится на консоль.

Цитата Сообщение от Dimmon5700 Посмотреть сообщение
я это не учил еще
Будет повод выучить.

Цитата Сообщение от Dimmon5700 Посмотреть сообщение
подходит , только тут не выводит знаки . ! ?
Так работает метод Split. Могу сказать какой костыль прикрутить.
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 35
24.02.2012, 01:33  [ТС]
C#
1
2
3
4
5
6
7
string path = "File.txt";
        using(StreamReader streamReader = new StreamReader(path)){
              string[] sentences = streamReader.ReadToEnd().Split('.');
              Array.Reverse(sentences);
              foreach(string sentence in sentences)
                    Console.WriteLine(sentence);
        }
Вот этот код надо дописать чтобы выводило знаки.
0
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
24.02.2012, 09:11
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
using System;
using System.IO;
using System.Linq;
using System.Text;
 
class Program
{
    static void Main()
    {
        string path = "File.txt";
        using (StreamReader streamReader = new StreamReader(path))
        {
            string file = streamReader.ReadToEnd();
            char[] signs = { '.', '!', '?' };
 
            StringBuilder sb = new StringBuilder();
            foreach (char symbol in file)
                if (signs.Contains(symbol))
                    sb.Append(symbol);
 
            string[] sentences = file.Split(signs, StringSplitOptions.RemoveEmptyEntries);
            Array.Reverse(sentences);
            for (int i = 0; i < sentences.Length; i++)
                Console.WriteLine("{0}{1}", sb[sentences.Length - i - 1], sentences[i]);
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.02.2012, 09:11
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru