Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RFpro.ru: Программирование на C / C++


Хостинг портала RFpro.ru:
Московский хостер
Профессиональный ХОСТИНГ на базе Linux x64 и Windows x64

РАССЫЛКИ ПОРТАЛА RFPRO.RU

Лучшие эксперты данной рассылки

Гаряка Асмик
Статус: Профессор
Рейтинг: 6004
∙ повысить рейтинг »
Boriss
Статус: Академик
Рейтинг: 2594
∙ повысить рейтинг »
Абаянцев Юрий Леонидович aka Ayl
Статус: Профессионал
Рейтинг: 2209
∙ повысить рейтинг »

/ КОМПЬЮТЕРЫ И СОФТ / Программирование / C/C++

Номер выпуска:1611
Дата выхода:17.12.2010, 16:00
Администратор рассылки:Verena (Профессор)
Подписчиков / экспертов:329 / 178
Вопросов / ответов:3 / 3

Вопрос № 181220: Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос: Нужно написать программу, которая считывает текст из файла и выводит на экран только предложения, не содержащие запятых. Нужно чтобы программа работала на Dev-...


Вопрос № 181239: Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос: помогите пожалуйста с программой. Условие: Задан исходный текст на русском языке. Длина текста — не более NL строк, длина строки — не более NS символов, длина слова — ...
Вопрос № 181244: Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос: Помогите с программой. Условие: Матричная арифметика. Элементы матрицы могут быть любого типа с плавающей точкой. Для решения данной задачи использовать шаблон базовых...

Вопрос № 181220:

Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос:

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

Нужно чтобы программа работала на Dev-C++

Отправлен: 11.12.2010, 16:27
Вопрос задал: Скачков Антон Юрьевич (Посетитель)
Всего ответов: 1
Страница вопроса »


Отвечает Павел Юрьевич (5-й класс) :
Здравствуйте, Скачков Антон Юрьевич!

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

FILE *f;
char *str;
int file_size;

int check_two_digits(char *s)
{
for (int i=0; i<strlen(s); i++)
{
if (s[i]==',') return(1);
}
return(0);
}

int main(int argc, char *argv[])
{
if (argc < 2)
{
printf ("Не указан файл\n");
return(1);
}

f=fopen(argv[1],"rb");
if (f)
{
fseek(f,0,SEEK_END);
file_size=ftell(f);
rewind(f);
str=(char *)malloc(file_size);

while((fgets(str,file_size,f))!=NULL)
{
if (check_two_digits(str)==0) printf("%s",str);
}

free(str);
fclose(f);
}

return(0);
}

Ответ отправил: Павел Юрьевич (5-й класс)
Ответ отправлен: 11.12.2010, 21:16
Номер ответа: 264667

Оценка ответа: 2
Комментарий к оценке:
Я просил выпонить программу на Dev-C++ а не на визуал студио...

Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 264667 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Вопрос № 181239:

    Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос:
    помогите пожалуйста с программой.
    Условие:
    Задан исходный текст на русском языке. Длина текста — не более NL строк, длина строки — не более NS символов, длина слова — не более NW символов. Исходный текст должен заканчиваться точкой ('!', '?'). Составить программу, которая определяет, сколько слов содержат 1 слог, 2 слога и т. д. В файле результатов должен быть исходный текст и список слов (разделенных запятыми) с 1 слогом, 2 слогами и т. д.
    Не получается никак сделать определения, сколько слов содержат 1 слог, 2слога и т.д.

    Отправлен: 12.12.2010, 05:25
    Вопрос задал: Azarov88 (Посетитель)
    Всего ответов: 1
    Страница вопроса »


    Отвечает Verena (Профессор) :
    Здравствуйте, Azarov88!
    Например, можно сделать так. Пишем функцию, которая проверяет букву на то, что она гласная, и функцию, которая считает число слогов в слове:
    Код:
    const char vwls [] = {'а', 'е',
    'и', 'о', 'у', 'ы', 'э', 'ю', 'я'}; //гласные буквы

    bool IsVowel (char x) //проверка символа х на то, что это гласная буква
    {
    for (int i=0; i<9; i++)
    if (x==vwls[i]) return true;
    return false;
    }

    int Sylls (char* word) //подсчёт числа слогов в слове
    {
    int l = strlen (word);
    int k = 0;
    for (int i=0; i<l; i++)
    if (IsVowel(word[i])) k++;
    return k;
    }

    Далее можно, например, завести массив из NW/2+1 (по максимально возможному числу слогов в слове) строк, в каждый элемент которого накапливать слова с одинаковым числом слогов через запятую, которые потом, собственно, и вывести. Или можно, в целях экономии памяти, сохранять только позиции нужных слов, а потом скопировать их из исходного текста.
    Удачи!
    -----
    Эта история - не для истории, понимаешь?

    Ответ отправил: Verena (Профессор)
    Ответ отправлен: 16.12.2010, 22:20
    Номер ответа: 264822

    Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 264822 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Вопрос № 181244:

    Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос:
    Помогите с программой.
    Условие:
    Матричная арифметика. Элементы матрицы могут быть любого типа с плавающей точкой. Для решения данной задачи использовать шаблон базовых классов (размещение матрицы в динамической памяти и ее инициализация — конструктор, при необходимости — конструктор копирования, деструктор, заполнение матрицы значениями из файла, печать содержимого матрицы в файл) и шаблон производных классов (характеристикой строки матрицы назовем сумму ее положительных элементов, имеющих четные значения индексов; переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристик).

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

    Отправлен: 12.12.2010, 09:10
    Вопрос задал: Azarov88 (Посетитель)
    Всего ответов: 1
    Страница вопроса »


    Отвечает Verena (Профессор) :
    Здравствуйте, Azarov88!
    Вот пример Вашей программы с шаблонами. Создаём базовый и производный классы как шаблоны от типа T1, который будет являться типом данных в матрице. И функции, соответственно, разносим по двум классам. Функцию сравнения, которую Вы передаёте в qsort, надо делать статической, из-за чего приходится пользоваться глобальной переменной, в которую непосредственно перед вызовом сохраняем значение члена класса c_col. Не очень красивое решение, но зато минимальные изменения в Вашем коде.
    Про шаблоны классов можете почитать в этом уроке и на Википедии.
    Шаблоны в приложении, а вот пример использования:
    Код:
    #include "BaseMatrix.h"

    #define F_NAME "input.txt"


    int main()
    {

    ExMatrix<double> matr;
    matr.newMatr (F_NAME);
    matr.Sort ();
    matr.print (NULL);
    return 0;
    }

    Удачи!

    Приложение:

    -----
    Эта история - не для истории, понимаешь?

    Ответ отправил: Verena (Профессор)
    Ответ отправлен: 16.12.2010, 22:00
    Номер ответа: 264821

    Вам помог ответ? Пожалуйста, поблагодарите эксперта за это!
    Как сказать этому эксперту "спасибо"?
  • Отправить SMS #thank 264821 на номер 1151 (Россия) | Еще номера »
  • Отправить WebMoney:


  • Оценить выпуск »
    Нам очень важно Ваше мнение об этом выпуске рассылки!

    Задать вопрос экспертам этой рассылки »

    Скажите "спасибо" эксперту, который помог Вам!

    Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
    на короткий номер 1151 (Россия)

    Номер ответа и конкретный текст СМС указан внизу каждого ответа.

    Полный список номеров »

    * Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи. (полный список тарифов)
    ** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
    *** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.


    © 2001-2010, Портал RFPRO.RU, Россия
    Авторское право: ООО "Мастер-Эксперт Про"
    Автор: Калашников О.А. | Программирование: Гладенюк А.Г.
    Хостинг: Компания "Московский хостер"
    Версия системы: 2010.6.25 от 13.12.2010

    В избранное