![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
SkyRideR |
![]()
Сообщение
#1
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: ![]() ![]() ![]() |
Всем привет. Нужно написать прогу, её задача в том чтобы считала кол-во символов в слове(текстовый), затем кол-во этих символов заносила в номер массива которому соответствует кол-во этих символов. После этого строила график отображая в каком номере массива, сколько символов. Большую часть сделал, а вот график
как-то не получается сделать program dsv; uses graph; var a : array[1..25] of integer; GrDriver, GrMode : integer; ffile : text; buf : string; i : integer; begin assign(ffile,'file1.txt'); reset(ffile); while not eof(ffile) do begin readln(ffile,buf); while (pos(' ',buf) <> 0) do begin i := pos(' ', buf); inc(a[length(copy(buf, 1, i-1))]); delete(buf, 1, i); end; inc(a[length(buf)]); end; begin GrDriver := detect; GrMode := 0; initgraph(GrDriver, GrMode, ''); line(50,50,50,300); line(50,300,500,300); moveto(50*i, 300-(a[i]*4)); lineto(50*i, 300-(a[i]*4)); readln; CloseGraph; close(ffile); end; end. |
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
1. заключи программу в теги code
2. сделай нормальное форматирование... в таком виде непонятно, какой begin к чему относится... и чему равно i при построении графика. имхо, там цикл должен быть... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
klem4 |
![]()
Сообщение
#3
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
мне кажется было-бы намного рациональнее для хранения частот появления разных по длине слов использовать список. Поищи недавно решалась задача "Частотный словарь" там есть сходство с твоей задачей.
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
SkyRideR |
![]()
Сообщение
#4
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 15 Пол: Мужской Репутация: ![]() ![]() ![]() |
в общем отчасти разобрался как, что делать, теперь только не получается сам график достроить, чтобы начиная с первой позиции он проводил линию в следующую позицию и т.д. до конца
program dsv; uses graph; var a : array[1..25] of integer; GrDriver, GrMode : integer; ffile : text; buf, r, t, q, w : string; i : integer; begin assign(ffile, 'c:\ctix.txt'); reset(ffile); while not eof(ffile) do begin readln(ffile, buf); while (pos(' ', buf) <> 0) do begin i := pos(' ', buf); inc(a[length(copy(buf, 1, i-1))]); delete(buf, 1, i); end; inc(a[length(buf)]); end; close(ffile); GrDriver := detect; GrMode := 0; initgraph(GrDriver, GrMode, ''); for i := 1 to 25 do begin r:='Y'; t:='X'; str(a[i], w); str(i, q); line(10,10,10,300); line(10,300,600,300); moveto(20*i, 300-(a[i]*4)); lineto(20*i, 300); moveto(0, 10); outtextxy(0, 10, r); moveto(490, 310); outtextxy(590, 310, t); moveto(20*i, 290-(a[i]*4)); outtextxy(20*i, 290-(a[i]*4), w); moveto(20*i, 290-(a[i]*4)); outtextxy(20*i, 310, q); {moveto(10*i, (a[i]*4)); line(10,300, (a[i]*4),(a[i]*4) );} вот тут у меня и не получается не могу понять как координаты задать правильно end; readln; CloseGraph; end. |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Во-первых (и тебе мисс_граффити уже говорила об этом) пользуйся тегами, Без них программа просто не читаема.
Во-вторых, читай комментарии... program dsv; |
![]() ![]() |
![]() |
Текстовая версия | 20.06.2025 14:22 |