Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ Отрицательные частицы Не и Ни https://www.cyberforum.ru/ cpp-beginners/ thread126965.html
Помогите пожалуйста переписать задачу на язык С :) uses crt; const dividers=;{дописать нужные} var s,temp:string; i,c:integer; begin
C++ Подсчитать количество классов в файле
Вопрос такого плана: Есть файл в котором определено некоторое кол-во классов, которое неизвестно и может быть любым. Подскажите каким образом можно узнать это кол-во? Самое простое и первое что мне приходит в голову, это открыть файл и до его конца делать подсчет слова 'class'. ))) ну и закрыть и вывести результат.
C++ Частота появления буквы в строке https://www.cyberforum.ru/ cpp-beginners/ thread126955.html
Opredelit' chastotu poyavleniya bukvi v stroke. Opredelit' naibolee chasto vstrechayuchusya bukvu. (S parametrom - Bukva A zaglavnaya , nachinaya с 65 (strochnaya с 97)) 0: 1: 2: 3: 4: 5: 6:
C++ Массив структур: книги, хранящиеся в библиотеке 8. Для книг, хранящихся в библиотеке, задаются регистрационный номер книги, автор, название, год издания, издательство, количество страниц. Вывес-ти список книг с фамилиями авторов, изданных после заданного года.!!!!!!!!!!!!!! https://www.cyberforum.ru/ cpp-beginners/ thread126942.html
ООП на С++ C++
Помогите пожалуйста!! Не понимаю как это сделать(( Создать программу с классом Student порождающий обьекты - данные об студентах желающих получить места в общежити Класс включает в себя следующие элементы - Ф.И.О. студента; - номер группы ( буква и четыре цифры); - средний балл; - доход на одного члена семьи; и следующие функции-члены класса:
C++ Занесите в массив простые множители числа 1. Дано число N (задаётся пользователем). Занесите в массив простые множители данного числа. 2. Найти максимальный элемент среди минимальных элементов строк матрицы. Вывести номер строки и столбца для такого элемента. 3. Дана строка, содержащая целые числа, отделённые друг от друга произвольными символами, отличными от цифр. Найти сумму этих чисел. 4. Дан текстовый файл. Напишите программу,... https://www.cyberforum.ru/ cpp-beginners/ thread126924.html
C++ Факториал https://www.cyberforum.ru/ cpp-beginners/ thread126917.html
Дано натуральное число n; найти n!. Использовать программу, включающую рекурсивную процедуру вычисления n!
Код С++ C++
вот такая задача: Вычислить сумму бесконечного сходящегося ряда. Суммирование прекратить при появлении в сумме слагаемых, имеющих абсолютную величину, меньшую заданной погрешности d. Значение d задается пользователем. S=1-1\(2^4)+1\(3^4)-1\(4^4)+... я даже не понимаю че делать та нада, не то чтобы код написать)))
C++ Массивы в С++ https://www.cyberforum.ru/ cpp-beginners/ thread126899.html
Всем здравствуйте! Пожалуйста помогите если сможете. Я сама не могу, а надо:( 1: В упорядоченном массиве а1,...,а20 заменить один из элементов на заданное р так , чтобы не нарушилась упорядоченность :)
C++ Подсчет вероятнностей Доброго времени суток! Проблема следующая. Необходимо подсчитывать вероятности выпадения граней двух кубиков. рандомам я организовал выпадание граней, подсчитываю колличество выпадений отдельных граней, однако при подсчете вероятностей выдается одни нули. Код: #include<stdio.h> #include<time.h> #include<iostream.h> #include<stdlib.h> https://www.cyberforum.ru/ cpp-beginners/ thread126898.html
error LNK2019 C++
Привет всем, не могу понять из-за чего такая ошибка(( помогите разобраться, пример брал с учебника(практикум Павловской 2-я часть), работаю в VS 2005, помогите разобраться пожалуйста.Заранее благодарен. вот код ошибки: 1>------ Build started: Project: Treygol, Configuration: Debug Win32 ------ 1>Linking... 1>Main.obj : error LNK2019: unresolved external symbol "public: __thiscall...
C++ Обьясните пожалуйсто код https://www.cyberforum.ru/ cpp-beginners/ thread126875.html
enum ConsoleColor { Black = 0, Blue = 1, Green = 2, Cyan = 3, Red = 4, Magenta = 5, Brown = 6, LightGray = 7,
0 / 0 / 0
Регистрация: 08.05.2010
Сообщений: 22
0

Гистограммы C++ - C++ - Ответ 713195

09.05.2010, 15:14. Показов 2863. Ответов 2
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
День добрый. Просьба помочь (желательно с пояснениями)
Задание.
Дан текст. Будем считать, что все слова в тексте состоят из латинских и кириллических букв (строчные и заглавные не различаются), все остальные символы - разделители. Вам необходимо для каждого слова посчитать, сколько раз оно встречается в этом тексте, и вывести гистограмму всех слов.
Входные данные
Входной файл содержит текст, который состоит из любых символов. Длина каждого слова в нем не превышает 100 символов, количество различных слов не превышает 10000, размер входного файла не превышает 5 мегабайт.
Выходные данные
Для каждого слова в выходной файл нужно вывести строчку символов '*', длина которой должна быть равна количеству вхождений данного слова в текст. Перед каждой строчкой необходимо вывести соответствующее слово. Слова выводить в нижнем регистре.
Пример
input.txt
This string is test string
output.txt

this *
is *
test *
string **

Добавлено через 21 час 42 минуты
Pascal
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
program WordGG;
type
  TPointer=^TNode;{указатель на узел}
  TNode=record{описание узла}
    strWord:string;{слово}
    count:integer;{частота встречи в файле}
    next:TPointer;{указатель на следующий элемент}
  end;
procedure InitList(var List:TPointer);
{процедура инициализации списка}
begin
  List:=nil;
end;
procedure AddToList(var List:TPointer;strWord:string);
{процедура добавления элемента в список на нужное место}
var
  NewNode,TempList:TPointer;{NewNode - новый узел, TempNode - вспомогательный указатель}
begin
  TempList:=List;{указатель на начало списка}
  while(TempList<>nil) and (TempList^.strWord<>strWord) do{пока не конец списка и не нашли повторений}
    TempList:=TempList^.next;{переход к следующему элементу списка}
  if TempList<>nil then{если не дошли до конца, то значит есть повторение}
    inc(TempList^.count){увеличиваем счетчик}
  else
  begin
    {создаем новый элемент}
    NewNode:=new(TPointer);{выделяем память в куче}
    NewNode^.strWord:=strWord;{записываем слово}
    NewNode^.count:=1;{инициализируем счетчик}
    {поиск нужного места}
    TempList:=List;{указатель на начало списка}
    if TempList<>nil then{если список не пуст}
    begin
      if NewNode^.strWord<List^.strWord then{если строка нового элемента должна стоять раньше первого в списке}
      begin
        NewNode^.next:=List;{следующий после нового первый в списке}
        List:=NewNode;{меняем указатель на первый элемент списка}
      end
      else
      begin
        while(TempList^.next<>nil) and (TempList^.next^.strWord<strWord) do{находим место вставки}
          TempList:=TempList^.next;
        {вставляем элемент}
        NewNode^.next:=TempList^.next;
        TempList^.next:=NewNode;
      end;
    end
    else{список пуст}
    begin
      NewNode^.next:=nil;{больше элементов нет}
      List:=NewNode;{первый элемент - только что созданный}
    end;
  end;
end;
procedure DeleteList(var List:TPointer);
{процедура удаления списка}
var
  TempList:TPointer;{вспомогательный указатель}
begin
  while(List<>nil) do{пока список не пуст}
  begin
    TempList:=List;{вспомогательный указатель на первый в списке}
    List:=List^.next;{двигаем указатель в списке}
    dispose(TempList);{освобождаем память для запомненного элемента}
  end;
end;
procedure CreateWordGGFile(strInputFileName,strOutputFileName:string);
{процедура создания гистограммы слов}
const
  SSymbols=['a'..'z','A'..'Z'];{мн-во символов}
var
  List,TempList:TPointer;{указатели на список и вспомогательный элемент соот-но}
  f:text;{текстовый файл}
  strWord:string;{для хранения прочитанного из файла слова}
  ch:char;{для чтения символа из файла}
  iMaxCount,iMaxLength,strLen,iLength:integer;
begin
  iMaxLength:=0;{инициализация максимальной длины строки}
  iMaxCount:=0;{инициализация максимального счетчика для слова}
  InitList(List);{инициализация списка}
  assign(f,strInputFileName);{связывание файловой переменной с файлом}
  reset(f);{открытие для чтения}
  while not eof(f) do{пока не конец файла}
  begin
    strWord:='';{инициализация слова}
    read(f,ch);{читаем символ}
    while not(eof(f) or (ch in SSymbols))do{пока прочитанный символ не буква}
      read(f,ch);{читаем символ}
    while not eof(f) and (ch in SSymbols) do{пока прочитанный символ буква}
    begin
      strWord:=strWord+ch;{добавляем букву к слову}
      read(f,ch);{читаем символ}
    end;
    if strWord<>'' then{если прочитанное слово не пусто}
    begin
      strLen:=Length(strWord);{узнаем длину слова}
      if strLen>iMaxLength then{если длина слова больше максимальной}
        iMaxLength:=strLen;{запоминаем максимальную длину слова}
      AddToList(List,strWord);{добавляем слово в список}
    end;
  end;
  close(f);{закрываем файл}
  assign(f,strOutputFileName);{связывание файловой переменной с фвйлом}
  rewrite(f);{открываем для перезаписи}
  TempList:=List;{указатель на начало списка}
  {ищем частоту слова, которое встречается чаще всего}
  while(TempList<>nil) do{пока не конец списка}
  begin
    if TempList^.count>iMaxCount then{если частота текущего слова больше}
      iMaxCount:=TempList^.count;{запоминаем максимальную частоту}
    TempList:=TempList^.next;{переход к следующему элементу}
  end;
  while(iMaxCount<>0) do{пока максимальная частота не равна 0}
  begin
    TempList:=List;{указатель на начало списка}
    while(TempList<>nil) do{пока не конец списка}
    begin
      if TempList^.count>=iMaxCount then{если частота текущего слова >= максимальной}
        write(f,'#'){печатаем символ #}
      else
        write(f,' ');{печатаем пробел}
      TempList:=TempList^.next;{переход к следующему элементу}
    end;
    writeln(f);{переход на следующую строку файла}
    dec(iMaxCount);{уменьшаем максимальную частотность}
  end;
  iLength:=1;{инициализация вспомогательной переменной}
  while(iLength<=iMaxLength) do{пока длина <= максимальной длине слова}
  begin
    TempList:=List;{указатель на начало списка}
    while(TempList<>nil) do{пока не конец списка}
    begin
      strLen:=Length(TempList^.strWord);{узнаем длину слова}
      if strLen>=iLength then{если длина текущего слова >= текущей длине}
        write(f,TempList^.strWord[iLength]){печатаем iLength'ую букву слова}
      else
        write(f,' ');{печатаем пробел}
      TempList:=TempList^.next;{переход к следующему элементу}
    end;
    writeln(f);{переходим к следующей строке файла}
    inc(iLength);{увеличиваем текущую длину}
  end;
  close(f);{закрываем файл}
  DeleteList(List);{удаляем список}
end;
var
  strInputFileName,strOutputFileName:string;
begin
  writeln('Please enter an input file name:');
  readln(strInputFileName);{вводим имя исходного файла}
  writeln('Please enter an output file name:');
  readln(strOutputFileName);{вводим имя выходного файла}
  CreateWordGGFile(strInputFileName,strOutputFileName);
  writeln('ok');
  readln;{ждем ввода}
end.
Вот код программы на Паскале...

Вернуться к обсуждению:
Гистограммы C++ C++
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.05.2010, 15:14
Готовые ответы и решения:

Одномерный массив. Печать номера, гистограммы.
a) Числа читаются из массива и графически представляются в виде * (печать гистограммы). b) Сначала...

Печать гистограммы длин вводимых слов (вертикально)
Данные гистограммы хранятся в одномерном массиве в виде: индекс массива соответствует позиции слова...

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

OpenCV: получить гистограммы каналов для области изображения
Здравствуйте, у меня есть простой код, который собирается, но вылетает при запуске. Задача:...

2
09.05.2010, 15:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.05.2010, 15:14
Помогаю со студенческими работами здесь

Напишите программу, печатающую гистограммы длин вводимых слов
Само задание: Напишите программу, печатающую гистограммы длин вводимых слов.

Построение гистограммы (частота встречающихся чисел типа long int)
Здравствуйте, можете подсказать какие-нибудь идеи, как выполнить построение гистограммы, которое...

Разработать программу вывода на экран графика дискретной функции (гистограммы).
Разработать программу вывода на экран графика дискретной функции (гистограммы). Изображение этого...

Модернизировать программу, чтобы значения гистограммы отображалось не строкой а столбцом
Пример программы: // Программа заполняет массив однобайтовых целых чисел однобайтовыми //...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru