Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / помогите создать програмку на VFP8 / 14 сообщений из 14, страница 1 из 1
24.02.2010, 17:28
    #36486394
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
Помогите!!!! Срочно нужна программа символьный массив 10x10 программа должна считать количество совпадающих букв в тексте!!! Если можно с анотацией!!! Я даже не знаю где и как создавать!!! Плиз!!! Спасите!!!!
...
Рейтинг: 0 / 0
24.02.2010, 20:59
    #36486741
guest12345
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
Все это выглядит примерно так.....
только это не избавит от необходимости понимания сути
и не является идеальным примером

Код: plaintext
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.
* Помогите!!!! Срочно нужна программа символьный массив 10x10
* программа должна считать количество совпадающих букв в тексте!!!
* Если можно с анотацией!!! Я даже не знаю где и как создавать!!!
* Плиз!!! Спасите!!!!

PUBLIC dim1( 10 ) && создаем массив из  10  строк
PUBLIC dim2( 255 ) && создаем массив для статистики букв в тексте
PRIVATE i1, j1, str1
CLEAR && очищаем экран

* заполняем массив исходными данными
FOR i1= 1  TO  10  STEP  1   
str1='' && обнуляем символную переменную
FOR j1= 1  TO  10  STEP  1 
str1=str1+CHR(rand()* 26 + 65 ) && формируем строку из  10  символов
ENDFOR
dim1(i1)=str1 && присваиваем строку из  10  символов в i ячейку массива
? dim1(i1) && печатаем на экран содержимое i ячейки массива
ENDFOR

* все что выше формирует исходные данные и может быть
* заменено на присваивание элементам массива исходных значений
* dim1( 1 )="пример тек"
* dim1( 2 )="пример тек"
* dim1( 3 )="пример тек"
* dim1( 4 )="пример тек"
* dim1( 5 )="пример тек"
* dim1( 6 )="пример тек"
* dim1( 7 )="пример тек"
* dim1( 8 )="пример тек"
* dim1( 9 )="пример тек"
* dim1( 10 )="пример тек"

dim2= 0 

FOR i1= 1  TO  10  STEP  1  && цикл перебора строк в массиве 
FOR j1= 1  TO  10  STEP  1  && цикл перебора букв в строке
dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))=dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))+ 1 
ENDFOR
ENDFOR
?
FOR i1= 1  TO  255  STEP  1  && 
IF dim2(i1)> 0 
? CHR(i1)+' = '+STR(dim2(i1))
ENDIF
ENDFOR

...
Рейтинг: 0 / 0
05.03.2010, 20:01
    #36505724
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
Guest12345Все это выглядит примерно так.....
только это не избавит от необходимости понимания сути
и не является идеальным примером

Код: plaintext
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.
* Помогите!!!! Срочно нужна программа символьный массив 10x10
* программа должна считать количество совпадающих букв в тексте!!!
* Если можно с анотацией!!! Я даже не знаю где и как создавать!!!
* Плиз!!! Спасите!!!!

PUBLIC dim1( 10 ) && создаем массив из  10  строк
PUBLIC dim2( 255 ) && создаем массив для статистики букв в тексте
PRIVATE i1, j1, str1
CLEAR && очищаем экран

* заполняем массив исходными данными
FOR i1= 1  TO  10  STEP  1   
str1='' && обнуляем символную переменную
FOR j1= 1  TO  10  STEP  1 
str1=str1+CHR(rand()* 26 + 65 ) && формируем строку из  10  символов
ENDFOR
dim1(i1)=str1 && присваиваем строку из  10  символов в i ячейку массива
? dim1(i1) && печатаем на экран содержимое i ячейки массива
ENDFOR

* все что выше формирует исходные данные и может быть
* заменено на присваивание элементам массива исходных значений
* dim1( 1 )="пример тек"
* dim1( 2 )="пример тек"
* dim1( 3 )="пример тек"
* dim1( 4 )="пример тек"
* dim1( 5 )="пример тек"
* dim1( 6 )="пример тек"
* dim1( 7 )="пример тек"
* dim1( 8 )="пример тек"
* dim1( 9 )="пример тек"
* dim1( 10 )="пример тек"

dim2= 0 

FOR i1= 1  TO  10  STEP  1  && цикл перебора строк в массиве 
FOR j1= 1  TO  10  STEP  1  && цикл перебора букв в строке
dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))=dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))+ 1 
ENDFOR
ENDFOR
?
FOR i1= 1  TO  255  STEP  1  && 
IF dim2(i1)> 0 
? CHR(i1)+' = '+STR(dim2(i1))
ENDIF
ENDFOR



спасибо большое большое, а как текст изменить??? плиз ответьте??? а то мне надо другой текст!!!
...
Рейтинг: 0 / 0
05.03.2010, 20:18
    #36505736
guest12345
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
я даже не совсем уверен, что написал именно то что нужно вам
именно поэтому необходимо понимание с вашей стороны

а изменить текст, ну как пример можно так

Код: plaintext
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.
PUBLIC dim1( 10 ) && создаем массив из  10  строк
PUBLIC dim2( 255 ) && создаем массив для статистики букв в тексте
PRIVATE i1, j1, str1
CLEAR && очищаем экран

* заполняем массив исходными данными

* все что выше формирует исходные данные и может быть
* заменено на присваивание элементам массива исходных значений
dim1( 1 )="Быть или   "
dim1( 2 )="не быть   ?"
dim1( 3 )="Вот в чем "
dim1( 4 )="вопрос     "
dim1( 5 )="              "
dim1( 6 )="Шекспир  "
dim1( 7 )="Весь мир  "
dim1( 8 )="театр а    "
dim1( 9 )="люди в    "
dim1( 10 )="нем актеры"

dim2= 0 

FOR i1= 1  TO  10  STEP  1  && цикл перебора строк в массиве 
FOR j1= 1  TO  10  STEP  1  && цикл перебора букв в строке
dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))=dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))+ 1 
ENDFOR
ENDFOR
?
FOR i1= 1  TO  255  STEP  1  && 
IF dim2(i1)> 0 
? CHR(i1)+' = '+STR(dim2(i1))
ENDIF
ENDFOR
...
Рейтинг: 0 / 0
05.03.2010, 20:25
    #36505738
guest12345
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
* присваивание элементам массива исходных значений

dim1(1)="Быть или "
dim1(2)="не быть ? "
dim1(3)="Вот в чем "
dim1(4)="вопрос "
dim1(5)=" "
dim1(6)="Шекспир "
dim1(7)="Весь мир "
dim1(8)="театр а "
dim1(9)="люди в "
dim1(10)="нем актеры"
...
Рейтинг: 0 / 0
05.03.2010, 20:27
    #36505740
guest12345
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
Каждому элементу массива от 1 до 10
присваивается строка из 10 символов
...
Рейтинг: 0 / 0
05.03.2010, 20:47
    #36505758
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
Guest12345я даже не совсем уверен, что написал именно то что нужно вам
именно поэтому необходимо понимание с вашей стороны

а изменить текст, ну как пример можно так

Код: plaintext
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.
PUBLIC dim1( 10 ) && создаем массив из  10  строк
PUBLIC dim2( 255 ) && создаем массив для статистики букв в тексте
PRIVATE i1, j1, str1
CLEAR && очищаем экран

* заполняем массив исходными данными

* все что выше формирует исходные данные и может быть
* заменено на присваивание элементам массива исходных значений
dim1( 1 )="Быть или   "
dim1( 2 )="не быть   ?"
dim1( 3 )="Вот в чем "
dim1( 4 )="вопрос     "
dim1( 5 )="              "
dim1( 6 )="Шекспир  "
dim1( 7 )="Весь мир  "
dim1( 8 )="театр а    "
dim1( 9 )="люди в    "
dim1( 10 )="нем актеры"

dim2= 0 

FOR i1= 1  TO  10  STEP  1  && цикл перебора строк в массиве 
FOR j1= 1  TO  10  STEP  1  && цикл перебора букв в строке
dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))=dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))+ 1 
ENDFOR
ENDFOR
?
FOR i1= 1  TO  255  STEP  1  && 
IF dim2(i1)> 0 
? CHR(i1)+' = '+STR(dim2(i1))
ENDIF
ENDFOR


я хочу изменить текст, не получается, почему??? просто училка при защите все спрашивает, а на английском меняет но в начале что то не то выходит, вот я в файл положила принт скрин, спасибо спасибо
...
Рейтинг: 0 / 0
05.03.2010, 21:14
    #36505772
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
ВСЕ СЕЙЧАС ПОПРОБУЮ!!! СПАСИБО, Я ДОГНАЛА! ХЕХЕ
...
Рейтинг: 0 / 0
05.03.2010, 21:19
    #36505778
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
СПАСИБО БОЛЬШОЕ!!!!!!
...
Рейтинг: 0 / 0
09.03.2010, 17:43
    #36509647
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
Guest12345я даже не совсем уверен, что написал именно то что нужно вам
именно поэтому необходимо понимание с вашей стороны

а изменить текст, ну как пример можно так

Код: plaintext
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.
PUBLIC dim1( 10 ) && создаем массив из  10  строк
PUBLIC dim2( 255 ) && создаем массив для статистики букв в тексте
PRIVATE i1, j1, str1
CLEAR && очищаем экран

* заполняем массив исходными данными

* все что выше формирует исходные данные и может быть
* заменено на присваивание элементам массива исходных значений
dim1( 1 )="Быть или   "
dim1( 2 )="не быть   ?"
dim1( 3 )="Вот в чем "
dim1( 4 )="вопрос     "
dim1( 5 )="              "
dim1( 6 )="Шекспир  "
dim1( 7 )="Весь мир  "
dim1( 8 )="театр а    "
dim1( 9 )="люди в    "
dim1( 10 )="нем актеры"

dim2= 0 

FOR i1= 1  TO  10  STEP  1  && цикл перебора строк в массиве 
FOR j1= 1  TO  10  STEP  1  && цикл перебора букв в строке
dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))=dim2(ASC(SUBSTR(dim1(i1),j1, 1 )))+ 1 
ENDFOR
ENDFOR
?
FOR i1= 1  TO  255  STEP  1  && 
IF dim2(i1)> 0 
? CHR(i1)+' = '+STR(dim2(i1))
ENDIF
ENDFOR

спасибо за программку, последний вопрос
dim2(ASC(SUBSTR(dim1(i1),j1,1)))=dim2(ASC(SUBSTR(dim1(i1),j1,1)))+1 здесь,
? CHR(i1)+' = '+STR(dim2(i1)) здесь,
что происходит???
что такое ASC,SUBSTR,CHR,STR??? учитель все спрашивает просто, извините если нарягаю
...
Рейтинг: 0 / 0
09.03.2010, 19:10
    #36509853
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
что такое ASC,SUBSTR,CHR,STR??? учитель все спрашивает просто...а ученице неохота даже проRTFMить...
...и чего я сегодня добрый такой?
аск - код по символу
субстр - подстрока
цшр - символ по коду
стр - перевод в строку
за развёрнутыми объяснениями - в хелп.
...
Рейтинг: 0 / 0
09.03.2010, 19:40
    #36509913
Alinka.K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
tanglirчто такое ASC,SUBSTR,CHR,STR??? учитель все спрашивает просто...а ученице неохота даже проRTFMить...
...и чего я сегодня добрый такой?
аск - код по символу
субстр - подстрока
цшр - символ по коду
стр - перевод в строку
за развёрнутыми объяснениями - в хелп.
спасибо большое, извянки за назойливость
...
Рейтинг: 0 / 0
09.03.2010, 20:54
    #36510048
guest12345
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
перед циклами подсчета количества повторений
каждого символа в массиве обнуляем массив dim2

dim2=0 && здесь первоначально каждому элементу массива присвоено 0 (нулевое) значение


dim2(ASC(SUBSTR(dim1(i1),j1,1)))=dim2(ASC(SUBSTR(dim1(i1),j1,1)))+1

SUBSTR(dim1(i1),j1,1) - выделение буквы из массива dim1
i1-номер строки,
j1-номер буквы в строке
1-количество вырезаемых из строки символов 1

в результате последовательно в цикле i1 и j1 получили один символ
из всего массива 10х10 символов

ASC(символ) - получили код символа

dim2(код символа) = dim2(код символа) + 1 && здесь считаем количество одинаковых символов

по коду символа в массиве - увеличиваем значение на 1 (единицу)

в конце двух циклов for массив dim2 содержит результат подсчета количества повторений
одинаковых символов в исходном массиве

FOR i1=1 TO 255 STEP 1 && цикл по всем элементам массива dim2
IF dim2(i1)>0 && если значение елемента массива больше 0
&& значит буква была подсчитата и присутствует в исходных данных
? CHR(i1)+' = '+STR(dim2(i1)) && по коду i1 - CHR(i1) выводит букву,
&& а STR(dim2(i1)) количество таких букв в исходном массиве
&& печатаем строку 'буква' = 'количество'
ENDIF
ENDFOR
...
Рейтинг: 0 / 0
09.03.2010, 21:32
    #36510105
guest12345
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
помогите создать програмку на VFP8
В примере программы можно заметить

PUBLIC dim2(255) && создаем массив для статистики букв в тексте

т.к. считаем символы по их коду а к элементам массива обращаемся

dim2(код символа), не забывая что элементы массива начинаются с 1 по 255

таким образом пример программы не считает символы с кодом 0
если такие бы были в тексте, но т.к. группа символов от 0 до 31
считается непечатными, то я посчитал что это для вашего примера
не является критическим фактом, но в будущем начинайте решение
задачи с построения алгоритма ее решения, а потом кодирования
учитывая все ньюансы выбранного языка программирования
и все условия поставленной задачи
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / помогите создать програмку на VFP8 / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]