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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 5.00
Gram
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 4
#1

Дан текстовый файл F. Найти, сколько раз встречается в нем слово S - C++

02.12.2008, 14:52. Просмотров 2551. Ответов 8
Метки нет (Все метки)

Просто без выходная ситуация надо решить задачи... Просто умоляю кто нибудь ПАМАГИТЕ!!!!!!!!!!!!
1)Дан файл F, содержащий сведения о кубиках: размер (длина его ребра), его цвет и материал. Найти количество кубиков данного цвета и их суммарный объем.

2)Дан текстовый файл F. Найти , сколько раз встречается в нем слово S.

3)Дана строка символов. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелы внутри себя, будем называть словами. Удалить из каждой группы идущих подряд более двух цифр, которой предшествует точка, все цифры начиная с третьей (например, 5+0.1234-98.54+123.4 преобразуется в 5+0.12-98.54+123.4).

4)Даны натуральное число N, действительные числа A1, …, AN. Заменить в последовательности A1, …, AN единицей числа, равные или превосходящие единицу, а нулем числа, меньшие единицы. Получить (1+R)/(1+S), где R – сумма всех членов последовательности, меньших единицы, S – сумма всех членов последовательности, равных или превосходящих единицу.

Ну очень надо выручите прошу ВАС....
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2008, 14:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дан текстовый файл F. Найти, сколько раз встречается в нем слово S (C++):

Дан числовой массив. Определить, сколько раз в нем встречается максимальный по величине элемент. - C++
7.10.1. Помогите, пожалуйста, решить задачу в С++. Дан числовой массив. Определить, сколько раз в нем встречается максимальный по...

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

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

Дан двумерный массив размером 13х12. Найти наибольший элемент массива и указать сколько раз он встречается в массиве - C++
Дан двумерный массив размером 13х12. Найти наибольший элемент массива и указать сколько раз он встречается в массиве

Дан текстовый файл. Найти самое короткое слово. - C++
Дан текстовый файл. Найти самое короткое слово. Слово нужно прочитать из файла , а сама программа через массив. Заранее спасибо!

Найти сколько раз в строке из 16 символов встречается слово "she" - C++
Помогите с решением лабы: Найти сколько раз в строке из 16 символов встречается слово "she"

8
StarWorm
17 / 16 / 4
Регистрация: 20.11.2008
Сообщений: 81
02.12.2008, 17:16 #2
если очень надо, то пиши
382 шесть шесть шесть 671
решу за вознаграждение (небольшое)
0
Gram
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 4
02.12.2008, 17:31  [ТС] #3
блин у меня денег нет ваще просто критическая ситуация.... помагите люди очень вас прошу!!!!!
0
StarWorm
17 / 16 / 4
Регистрация: 20.11.2008
Сообщений: 81
02.12.2008, 19:03 #4
Ну в таком случае вряд ли кто возьмется помогать, коли ты вообще сам ничего делать не хочешь...
Ни день не зарабатываешь для оплаты труда, не сам свой труд делать не хочешь... Как то это неправильно, тебе не кажется?!
1
УЫЕУЕ
2 / 2 / 0
Регистрация: 04.11.2008
Сообщений: 37
02.12.2008, 19:24 #5
что у тебя есть хотя бы по 4ой (самой лёгкой) задаче?
если нет ничего - смотри предыдущее высказывание.... а лучше запомни и сделай выводы
0
Gram
0 / 0 / 0
Регистрация: 02.12.2008
Сообщений: 4
03.12.2008, 11:23  [ТС] #6
Я уж сам решил 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
//---------------------------------------------------------------------------
#pragma hdrstop
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
 
 
//---------------------------------------------------------------------------
void main( )
{
 int N, i=0, S, R;
 float A[255], res;
 cout<<"vvedite kolichestvo chisel v peremenoi";
 cin>>N;
 while (i<N)
 {
 cout<<" vvedite peremenoe"<<endl;
 cin>>A[i];
 if (A[i]>=1)
  {
  i++;
  A[i]>=1;
  S++;
  }
  else
  {
  A[i]=0;
  i++;
  R++;
  }
 }
 res=(1+R)/(1+S);
 cout<<" poluchim "<<res;
getch();
}
//---------------------------------------------------------------------------
0
BornLeader
50 / 46 / 1
Регистрация: 16.05.2008
Сообщений: 162
03.12.2008, 12:25 #7
Цитата Сообщение от Gram Посмотреть сообщение
2)Дан текстовый файл F. Найти , сколько раз встречается в нем слово S.
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
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
 
int main(void)
{
  ifstream infile("input.txt");
  string s;
  cout << "Input word: ";
  cin >> s;
  int Count = 0;
  string line;
  while(getline(infile,line))
  {
    char* p;
    p = strtok(const_cast<char*>(line.c_str())," ");
    if((p)&&(strcmp(p,s.c_str())==0)) 
      Count++;
    while(p = strtok(NULL," "))
      if(strcmp(p,s.c_str())==0)
        Count++;
  }
  cout << "count repeat = " << Count << endl;
  return 0;
}
0
BornLeader
50 / 46 / 1
Регистрация: 16.05.2008
Сообщений: 162
04.12.2008, 15:20 #8
Цитата Сообщение от Gram Посмотреть сообщение
3)Дана строка символов. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелы внутри себя, будем называть словами. Удалить из каждой группы идущих подряд более двух цифр, которой предшествует точка, все цифры начиная с третьей (например, 5+0.1234-98.54+123.4 преобразуется в 5+0.12-98.54+123.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
#include <iostream>
#include <ctype.h>
#include <string>
using namespace std;
 
int main(void)
{
  string str = "5+0.1234-98.54+123.4";
  cout << str << endl;
  for(size_t i=0;i<str.size();i++)
  {
    if(str[i]=='.')
    {
      string tmp;
      size_t j = i;
      while(isdigit(str[++j]))
        tmp += str[j];
 
      if(tmp.size()>2)
      {
        strcpy(&str[i+3],&str[i+1+tmp.size()]);
        str.resize(str.size()-tmp.size()+2);
      }
    }
  }
  cout << str << endl;
  return 0;
}
0
Evge_n
0 / 0 / 0
Регистрация: 11.12.2014
Сообщений: 14
11.12.2014, 17:48 #9
Я понимаю, что тема старая, но позволю себе побыть шаманом с бубном и воскресить её Попалась мне контрольная работа с похожими заданиями, в частности с заданием про вычитание цифр. Проанализировав код программы и откомпилировав код возник ряд вопросов, которые хотелось бы прояснить:

1. После компиляции и запуска программы выходит сообщение с ошибкой 1441, переполнение строковой переменной. Среда разработки VSExp 2010. Если убрать строку

C++
1
str.resize(str.size()-tmp.size()+2);
то ошибка не появляется. Насколько я понял приведённый выше код вполне логичен и должен при каждой итерации цикла уменьшать размер строковой переменной на то кол-во байт, которое удаляет строка
C++
1
strcpy(&str[i+3],&str[i+1+tmp.size()]);
. Почему тогда появляется ошибка?

2. Собственно не до конца понятен код удаления лишних символов
C++
1
strcpy(&str[i+3],&str[i+1+tmp.size()]);
. Если просто вывести значение str[i+3], то это будет третий символ после точки. Но с "&" выводится вся строка начиная с третьего символа. Про такое применение амперсанда относительно аргументов функции я не слышал. Знаю что он используется как унарный оператор вместе с указателем - возвращает адрес памяти.

3. До конца не разобравшись с предыдущим кодом, я решил написать что-то более понятное для меня, ну и внести своё слово в решение этой задачи Для этих благородных целей я нашёл в классе string функцию replace и написал такие строки кода:

C++
1
2
string emptystr("");
str.replace (str[i+3], tmp.size()-2, emptystr);
Здесь replace() передаётся как начальная позиция третий после точки символ, длинна фрагмента tmp.size()-2, заменяется на пустую строку. Вроде должно работать, но вывод мне совсем не понятен:

874736.1248723 fsfsfsf.sdfsdfds2331.dasf 423423434.sdfsdfsf.dfsdfsd.12//Моя исходная строка
874736.1248723 fsfsfsf.sdfsdfds2331.dasf 423423434.ssf.dfsdfsd.12// Вывод replace()

Подскажите, почему так получается? Заранее спасибо.
0
11.12.2014, 17:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2014, 17:48
Привет! Вот еще темы с ответами:

В массиве 3х5 узнать сколько раз в нем встречается элемент со значением X - C++
массив задавать случайной генерацией чисел. Не понимаю как прописать сколько раз встречается Х. #include &lt;iostream&gt; #include &lt;ctime&gt; ...

Заполнить массив случайными цифрами от 1 до 9, посчитать сколько раз в нем встречается - C++
1) Заполнить массив случайными цифрами от 1 до 9, посчитать сколько раз в нем встречается 5 и 7, идущие два раза подряд. Размер массива 100...

Дано натуральное число. Определить сколько раз в нем встречается первая цифра - C++
Помогите сделать программу! &quot;Дано натуральное число. Определить сколько раз в нем встречается первая цифра&quot; Заранее спасибо!

Дано натуральное число. Определить, сколько раз в нем встречается первая цифра - C++
Помогите сделать программу! &quot;Дано натуральное число. Определить сколько раз в нем встречается первая цифра&quot; Заранее спасибо!


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

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

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