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

Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы - C++

Восстановить пароль Регистрация
 
@Alexa@
0 / 0 / 0
Регистрация: 26.02.2011
Сообщений: 21
01.03.2011, 10:55     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы #1
Еще задание:
В масиве символов длинной 80, записаны слова, которые розделяються последовательностью символов "\0". Написать функцию, которая опредиляет количество слов масива, которые начинаються из заданой буквы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.03.2011, 10:55     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы
Посмотрите здесь:

Посчитать количество слов во введенной строке и найти слова, которые начинаются с буквы t C++
C++ Написать функцию, которая определяет количество вхождений в СПИСОК елемента, заданого пользователем.
C++ Написать функцию, которая определяет сумму положительных элементов массива целых чисел
C++ написать и протестировать функцию которая по заданному натуральному числу определяет количество цифр в нем и их сумму
C++ Написать и протестировать функцию, которая определяет, совпадают ли в заданной строке первая и последняя буквы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
@Alexa@
0 / 0 / 0
Регистрация: 26.02.2011
Сообщений: 21
03.03.2011, 16:10  [ТС]     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы #2
Помогите, плиз, очень надо!!! ЗАВТРА ЗДАВАТЬ!!!!!

Добавлено через 4 минуты
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
#include <iostream.h>
#include<string.h>
#include <conio.h>
#include <math.h>
#include<stdio.h>
 
 
int main()
{
clrscr ();
//FILE* f=fopen("D:\\otvet.txt","r");
//char* s;
//fgets(s,300,f); //300 - kol-vo schityvaemyh symvolov
char s[80];
cout<<"Vvedite r9dok:"<<"\n";
cin>>s;
//int cnt=0;
//char a;
 
 
for(int i=0;i<strlen(s);i++)
{
cout<<s[i];
}
char a;
cout<<" Vvedite symvol dlya sravneniya:"<<"\n";
cin>>a;
  int cnt=0;
for (i=0;i<strlen(s);i++)
{
if(s[i]==a && (s[i-1]==' ' || s[i-1]=='\0'))
{
cnt++;
}
}
 
cout<<" Kol-vo slov = "<<cnt;
cout<<endl;
//fclose(f);
getch();
   return 0;
}

Вот чтото есть, но оно не работает так как надо, исправде пожалуста, очень надо!!!!!
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
03.03.2011, 16:36     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream.h>
#include<string.h>
#include <conio.h>
#include <math.h>
#include<stdio.h>
 
using namespace std;
 
int main()
{
clrscr ();
//FILE* f=fopen("D:\\otvet.txt","r");
//char* s;
//fgets(s,300,f); //300 - kol-vo schityvaemyh symvolov
char s[81];
cout<<"Vvedite r9dok:"<<"\n";
cin.getline(s, 80);
//int cnt=0;
//char a;
 
char a;
cout<<" Vvedite symvol dlya sravneniya:"<<"\n";
cin>>a;
  int cnt=0;
for (int i=0;i<strlen(s);i++)
{
if(s[i]==a && (s[i-1]==' ' || s[i-1]=='\0'))
{
cnt++;
}
}
 
cout<<" Kol-vo slov = "<<cnt;
cout<<endl;
//fclose(f);
getch();
   return 0;
}
IrineK
Заблокирован
03.03.2011, 16:46     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Близко к вашему коду и для вашего компилятора:

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
#include <iostream.h>
#include<string.h>
#include <conio.h>
#include <math.h>
#include<stdio.h>
  
int main()
{
clrscr ();
char s[80];
int i;
cout<<"Vvedite r9dok:"<<"\n";
cin.getline(s,80);
 
int len=strlen(s);
for(i=0;i<len;i++)
    cout<<s[i];
 
cout<<endl;
char a;
cout<<" Vvedite symvol dlya sravneniya:"<<"\n";
    cin>>a;
 
int cnt=0;
for (i=0;i<len;i++)
    if(s[i]==a && (s[i-1]==' ' || s[i-1]=='\0' ||i==0))
        cnt++;
 
 cout<<" Kol-vo slov = "<<cnt<<endl;
getch();
return 0;
}
Добавлено через 2 минуты
To asics
C++
1
if(s[i]==a && (s[i-1]==' ' || s[i-1]=='\0'))
не будет учитывать первое слово, начинающееся с данной буквы. Нужен:
C++
1
if(s[i]==a && (s[i-1]==' ' || s[i-1]=='\0' ||i==0))
@Alexa@
0 / 0 / 0
Регистрация: 26.02.2011
Сообщений: 21
03.03.2011, 16:48  [ТС]     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы #5
Спасибо большое, я уже думала вешаться)))))))
Yandex
Объявления
03.03.2011, 16:48     Написать функцию, которая определяет количество слов массива, которые начинаются с заданной буквы
Ответ Создать тему
Опции темы

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