0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
|
1 | |
Случайным образом создать таблицу пар символьных значений и записать её в текстовый файл23.03.2010, 14:17. Показов 1959. Ответов 16
Метки нет (Все метки)
добрый день, помогите написать следующую программу (plz ... plz ... plz ))) :
Случайным образом создать таблицу пар символьных значений и записать её в текстовый файл в виде: X Y a m t 9 5 8 ! 7 u * Считать из файла пары значений и поместить в другой текстовый файл те из них, где X и Y являются буквами латинского алфавита или цифрами: X Y a m 5 8
0
|
23.03.2010, 14:17 | |
Ответы с готовыми решениями:
16
Случайным образом создать таблицу пар значений и записать её в текстовый файл ... Случайным образом создать таблицу пар целочисленных значений и записать её в текстовый файл Случайным образом создать таблицу пар целочисленных значений и записать её в текстовый файл в виде: Случайным образом создать последовательность целых чисел и записать её в текстовый файл Записать в текстовый файл ряд целых чисел, затем M раз случайным образом заменить элементы на -1 |
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
|
23.03.2010, 15:42 [ТС] | 3 |
как-то сложно мне представляется эта программа... куча вопросов ))
попробовал наметить алгоритм, исправьте пожалуйста : 1) Генерируем случайные значения В связи с этим вопрос: каким образом это делаем, полагаю в двумерном массиве (матрице с двумя столбцами, тогда сколько строк должно быть ?) или как-то по другому? И второй вопрос - какие операторы для генерации произвольных значений, а то только числа и цифры приходилось рандомно генерировать) 2) Проверяем каждую строку матрицы на возможные случаи (буква - буква, буква - цифра, цифра-цифра, символ-цифра, буква - символ). Т.е. обходом по строке с помощью цикла for проверку эту делаем с помощью функций isdigit(), isalpha(). Раньше их не встречал, какова структура функций и как они работают вобще ?) 3) После проверки, полученные результаты по перечисленным возможным случаям заносим в текстовый файл. 4) После из этого файлы считать и записать в новым файл лишь данные по буква-буква, цифра-цифра.
0
|
23.03.2010, 15:47 | 4 | ||||||||||
Любой символ char это тоже число... просто бери необходимый диапазон для генерации, либо же создай массив в который будут входить все возможные символы
0
|
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
||||||
23.03.2010, 16:17 [ТС] | 5 | |||||
ну вот набросал, в матрице 2x6 происходит генерация из диапазона ab12!*
тогда вопрос такой: мне в текстовый файл необходимо будет занести в виде буква буква буква число число число символ число буква символ но при случайно же не генерации, может получиться так что ни в какой строке матрицы не окажется одной из пары, например не будет пары буква-буква, тогда что мне вносить в текстовый файл ?))
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
23.03.2010, 16:17 | 6 |
rand()%s выдает числа от 0 до s-1
Поэтому нужно так: a[i]= ntable[ rand()%s ];
0
|
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
|
23.03.2010, 17:57 [ТС] | 7 |
не столь важно, генерация в любом случае происходит, но проблема как я писал не оказывается с троке матрицы пары какой-нибудь
вот в последней генерации были все пары, кроме цифра - число, а была пара символ-символ (которая мне не нужна для занесения в текстовый файл) как в этом случае мне быть? 1) либо просто в текстовый файл заносить пары значений которые имеются 2) либо такой способ через матрицу с 2 столбцами не подходит ? Добавлено через 1 час 32 минуты может кто-нибудь прогу написать, ну или хотя фрагмент программы с проверкой через функции isdigit(), isalpha()
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||
24.03.2010, 06:08 | 8 | |||||
0
|
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
|
24.03.2010, 15:02 [ТС] | 9 |
каким образом мне это вставить в мой код (( а то что-то пытаюсь, но как-то коряво строки моей матрицы проверяет (( help
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
25.03.2010, 08:13 | 11 |
0
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
25.03.2010, 16:46 | 13 |
Дык нормальные люди если делают массив символов, то в конце '\0' не кладут.
const int s= 7; char ntable[s] = { 'a', 'b', '1', '2', '!', '*', 'Z' };
1
|
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
||||||
25.03.2010, 21:20 [ТС] | 14 | |||||
дописал в код сохранение матрицы в файл:
Добавлено через 2 часа 59 минут мм, так каким образом так отсортировать элементы и как тогда код моей проги будет выглядеть ))
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||
26.03.2010, 08:37 | 15 | |||||
Сообщение от odip
Сообщение от Expelio
если прочитано два символа, передать их в функцию если истина, сохранить их в output2.txt надо выбрать язык, или C или C++ cout, endl, setw - это C++ char ntable, fprintf, fscanf, fopen - C
1
|
0 / 0 / 0
Регистрация: 16.03.2010
Сообщений: 23
|
||||||
26.03.2010, 19:06 [ТС] | 16 | |||||
это понятно, у меня сейчас проблема в другом, мне в самый первый файл необходимо не просто весь массив сохранить а лишь те пары элементов которые соответствуют условию задачи (в первом посте)
я так понимаю это необходимо сделать с помощью функций isdigit(), isalpha() но как не ковырялся что-то не получается Добавлено через 1 час 30 минут ОЧЕНЬ ПРОШУ ПОМОЧЬ!!! +) Вот пока получился такой код проги. (генерируется матрица, сохраняется в файл, предварительно пройдя отсортировку элементов через функции isdigit и asalpha) У меня два вопроса: 1) Если два элемента не удовлетворяют условиям (по функции isalpha и isdigit) то в файле остается просто пустая строка, каким образом удалить эту ненужную строку в файле ? 2) Если у меня, к примеру в матрице оказались две строки где оба элементы буква-буква, то в файле сохраняются эти обе строки, как можно сделать чтобы сохранялась лишь одна.
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|||||||||||
29.03.2010, 03:37 | 17 | ||||||||||
Сообщение от Expelio
а потом из него читать обратно (это сделать fclose(), потом fopen() с "r")
Сообщение от Expelio
надо по частям делать, а не всё одновременно
Сообщение от Expelio
то есть он не был в if'е
Сообщение от Expelio
как только строка сохранилась, нужно включить флаг а в if добавить проверку этого флага если тебе нужно сохранить только первую цифра-цифра и первую буква-буква, то тогда функцию нужно убрать и написать её содержимое прямо в if'е изменения, которые ты внёс в функцию, противоречат условию задачи (они пропускают знаки препинания)
0
|
29.03.2010, 03:37 | |
29.03.2010, 03:37 | |
Помогаю со студенческими работами здесь
17
Создать два двумерных массива (1-100) случайным образом, записать в файл Записать в текстовый файл таблицу значений функции Создать текстовый файл, содержащий таблицу значений функции f(x) Создать текстовый файл, содержащий таблицу значений функции Создать текстовый файл, содержащий таблицу значений функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |