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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ka2r
#1

Напечатать все слова, входящие в эту текстовую строку, заканчивающиеся на буквы заданного слова (например, abcdab, ab, kab) - C++

18.10.2010, 21:26. Просмотров 932. Ответов 3
Метки нет (Все метки)

Доброго времени суток, форумчане. Надеюсь на вашу помощь. Через неделю сессия, а мне к ней осталось доделать 4 задачи по практике, которые никак не выходят. Раньше учили Basic, в нём я ориентируюсь лучше, но думаю это неважно) Буду очень благодарен за любую помощь или советы.

1) Даны текстовая строка и слово (например, ab). Напечатать все слова, входящие в эту текстовую строку, заканчивающиеся на буквы заданного слова (например, abcdab, ab, kab), используя функции strtok, strlen, strcmp.


2) Записать алгоритм нахождения канторового разложения произвольного числа а – вектора в виде рекурсивной функции. Канторовым разложением положительного числа а называется запись вида:a=a1*1!+a2*2!...+an*n!, 0<=ai<=an.


3) Дан файл, содержащий несколько строк (причем строки не содержат пробелов). В новый файл записать строки данного, вставляя пробелы так, чтобы каждая строка имела длину 80 символов (пробелы должны быть расставлены равномерно).


4) Определить функцию, проверяющую, является ли заданная дробь несократимой. (Дробь задается двумя натуральными числами – числителем и знаменателем). Найти все несократимые дроби, заключенные между 0 и 1, знаменатели которых не превышают заданное число n.



Всем, заранее спасибо за помощь!

Добавлено через 3 часа 32 минуты
Неужели это так сложно?)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2010, 21:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Напечатать все слова, входящие в эту текстовую строку, заканчивающиеся на буквы заданного слова (например, abcdab, ab, kab) (C++):

Класс String. Напечатать все слова, входящие в эту текстовую строку, имеющие такую же длину как и заданное слово - C++
Даны текстовая строка и слово. Напечатать все слова, входящие в эту текстовую строку, имеющие такую же длину как и заданное слово. Не...

Напечатать все слова, отличные от последнего слова строки, удалив из каждого слова первую и последнюю буквы - C++
Близиться сессия,а завтра мне сдавать 2 проги. Помогите ребят,могу даже 100 скинуть,если уж так трудно помочь. 8.Задан...

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

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

Переставить все входящие буквы «а» в начало слова, а буквы «я» – в конец - C++
Привет! Нужно во всех словах строки S переставить все входящие буквы «а» в начало слова, а буквы «я» – в конец. Что-то не как не пойму...

Для заданного достаточно длинного слова найти в имеющемся тексте все слова, в которых использованы только буквы, имеющиеся в заданном слове - C++
Помогите пожалуйста!!!!!Плиззззззззз!!!!! Для заданного достаточно длинного слова найти в имеющемся тексте все слова, в...

3
accept
4825 / 3246 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
19.10.2010, 03:29 #2
C
1
2
3
4
5
6
    char *p;
 
    for (p = strtok(line, " "); p != NULL; p = strtok(NULL, " "))
        if (strlen(p) >= strlen(pattern)
         && strcmp(p + strlen(p) - strlen(pattern), pattern) == 0)
            printf("%s" "\n", p);
0
Ka2r
19.10.2010, 17:06 #3
Спасибо, аccept, сейчас попробую твой вариант!

Вожусь с третьей задачей. Пока отлаживаю программу только с одной строкой в документе. Результат работы - программа считает сколько всего символов в строке и недостаток до 80 заполняет буквами М Кто-нибудь подскажет где мой фейл?

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
#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
char s[80];
char ss[80];
int str;
setlocale(0,"Russian");
char filename[255];
cout<<"Введите имя файла:"<<endl;
cin>>filename;
FILE *fp=fopen(filename,"r");
    if (fp!=NULL) cout<<"файл открыт";
 
    while(!feof(fp))
    {
        fgets(s,80,fp);
 
          str=strlen(s);
 
        if(str==80)
        {
            
        }
        else if (str<80)
        {
            
            int ch = 80-str;
            for (int i=0;i<ch;i++)
            {
                s[strlen(s)]=char("b");
            }
        }
        else 
        {
        }
 
 
    }
 
cout<<ss;
 
getch();
return(0);
}
accept
4825 / 3246 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
20.10.2010, 05:44 #4
видимо строкой считается набор символов до перевода строки
80 символов + перевод строки (одинарный или двойной) + нуль-символ

1. так что лучше считать в буфер длины 100
2. убедиться, что последний символ - перевод строки (иначе выход)
3. потом в другой буфер уже записать пробелы, строку, пробелы
4. и вывести этот другой буфер в файл-результат

между 2 и 3 удалить перевод строки (fgets() сохраняет)
вычислить количество пробелов в начале и в конце (для 79 куда ставить пробел?)
0
20.10.2010, 05:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2010, 05:44
Привет! Вот еще темы с ответами:

Файловый ввод/вывод. Во всех словах строки переставить все входящие буквы «а» в начало слова, а буквы «я» – в конец - C++
Здравствуйте! Помогите, пожалуйста, составить программу, которая считывает из текстового файла input.txt строку символов S.Во всех словах...

Напечатать все слова отличные от последнего слова, предварительно перенести последнюю букву в начало слова - C++
Дано текст, содержащий от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между соседними словами - не менее одного пробела....

Напечатать все слова, отличные от последнего, удалив из слов все последующие вхождения первой буквы - C++
Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв, между соседними словами заданы не менее...

Составить строку, содержащую первые буквы из каждого слова заданного предложения - C++
Составить строку, содержащую первые буквы из каждого слова заданного предложения. Буду очень благодарен!)


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

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

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