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

Задан текст, слова которого разделены % - C++

Восстановить пароль Регистрация
 
ferdas
0 / 0 / 0
Регистрация: 24.02.2014
Сообщений: 41
14.04.2014, 23:04     Задан текст, слова которого разделены % #1
Задан текст, слова которого разделены %. Выяснить и вывести на экран, какой процент слов в тексте начинается на заданную букву (буква вводится с клавиатуры)

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
/************************************************/
/*                                              */
/*    Задано текст, слова якого роздылены %.    */
/* Вияснити і надрукувати, який процент слів    */
/* в тексті починається на задану букву.        */
/*                                              */
/************************************************/
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream.h>
 
int main(int argc, char* argv[])
{
    static char str[256] = "worker%thread%gui%cpp%tick%width%gadget%stock%widget%span%top";
    static char ch = 't';
 
    char* wd = NULL; int count = 0, wd_cnt = 0;
    for (wd = strtok(str,"%"); wd != NULL; 
        wd = strtok(NULL,"%"), count++)
        if (*wd == ch) wd_cnt++;
 
    printf("Number of words: %d\n",count);
    printf("Number of word matches: %d\n",wd_cnt);
    printf("%6.4f  of words begin with %c\n",(double)wd_cnt/count*100, ch);
 
    _getch();
 
    return 0;
}
вот есть готовое решение, но нужно эту букву вводить с клавиатуры, а не она задана изначально

пожалуйста, ещё нужно сделать подпрограммами
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2014, 23:04     Задан текст, слова которого разделены %
Посмотрите здесь:

Поменять местами первые слова (слова разделены пробелами) заданных строк, без использования процедур C++
C++ В тексте слова разделены запятыми,напечатать все слова в алфавитном порядке.
C++ C++ Задан текст. Слова в тексте разделены одним пробелом. В конце текста – точка. Определить, сколько раз заданный символ стоит на четных местах
задан текст. удалить из нее все слова, длина которых четная (создать новый массив, оставив все слова, длина которых нечетная) C++
C++ Задан текст. Найти длину самого короткого слова.
Задан текст, напечатать слова этого текста отличные от последнего слова C++
Дана строка текста, в которой слова разделены пробелами и запятыми, вывести повторяющиеся слова C++
С++ Задан текст напечатать слова отличные от последнего слова Visual Studio C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
daslex
1084 / 494 / 101
Регистрация: 02.08.2011
Сообщений: 2,408
15.04.2014, 00:46     Задан текст, слова которого разделены % #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
#include <iostream>
#include <string.h>
#include <windows.h>
 
using namespace std;
 
const int N=256;
 
char *getchar()
{
  char *ch=new char;
  cin>>ch;
  return ch;
}
 
double getresult(char *ch, char S[N])
{
    double result=0;
    double x=0,y=0;
 
     for(int i=1;i<strlen(S);i++)
     {
       if (strchr("%",S[i]))
       {
           x++;
           if (S[i+1]==*ch) y++;
       }
     }
     if (S[0]==*ch) y++;
    return y/x*100;
}
 
int main()
{
     char *ch=getchar();
     char S[N]="Привет%Мой%Дорогой%Друг";
 
     CharToOem(S,S);
     double result = getresult(ch,S);
 
     cout<<S<<"\n\n";
     cout<<result<<"\n";
    delete ch;
}
Миниатюры
Задан текст, слова которого разделены %  
Yandex
Объявления
15.04.2014, 00:46     Задан текст, слова которого разделены %
Ответ Создать тему
Опции темы

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