Добрый день, эксперты! Я наверно не совсем верно сформулировала вопрос(N362). Дело в том, что массив n*n я беру из некоторой процедуры и поэтому какие там числа я заранее не знаю. Поэтому нужно не отказывать пользователю во вводе нулей на глав. диагонали, и не присваивать их нулю, а нужно как то переставлять строки и столбцы, чтобы на глав. диагонали не было нулей. Кто знает как это сделать помогите пожалуйста.
Доброе время суток, gala! Я думаю, что это можно сделать просто меняя между собой содержимое ячеек. Например по условию: a - служебная переменная для обмена ЕСЛИ в ячейке[x] не должно быть ноля ТО НАЧАЛО a=ячейка[x-1]; ячейка[x-1]=ячейка[x]; ячейка[x]=a; КОНЕЦ Ответ отправлен: 10.12.2003, 08:28 Отправитель: sir henry Отвечает Tancho
Добрый день, gala! Это другое дела, поетому и прога инная. Матрица n x n у меня принимает стохастичные стойности ( через Random()). Прежде всего надо иметь в виду что для выполнение того что хочется в твое задание, надо в матрицу НЕ находится ни нулевого строка, ни нулевой столбец!Поетому и проверка на эту занимает основного место в мою прогу! В програме нет коментарии, если есть чего то непонятного пиши на мыло - trusev@neochim.bg .Смотри приложение.
Приложение: Ответ отправлен: 11.12.2003, 12:34 Отправитель: Tancho Отвечает Vitally
Добрый день, gala! Смотри приложение. Я использовал только перестановку строк, столбцы не трогал. Программа не идеальна. Я не смог найти решения для случая: 0000 0101 0000 1111 или 0101 или даже 1111 0000 0101 1111 1111 0101 1111 используя перестановку строк или столбцов. Вот если можно переставлять цифры как угодно, тогда все на много проще.Главное чтобы в матрице nxn было хотя бы 5 не нулевых значений. Если нужны коментарии, дополнения etc. пиши. ICQ: 126039422 Yahoo: b_vitally
Приложение: Ответ отправлен: 10.12.2003, 15:45 Отправитель: Vitally
Вопрос № 364
Пожалуйста помогите решить эти задачи в Pascale 1.Дан массив натуральных чисел. Найти сумму элементов массива и заменить последний элемент массива результатом суммы. 2.Дана последователность действительных чисел Найти количество нулей в этой последовательности. 3.Дана последовательность натуральных чисел. Найти наибольший элемент и поставить его на первое место. 4.При поступлении в вуз абитуриенты, получившие <двойку> на первом экзамене, ко второму не допускаются. В массиве А[n] записаны оценки экзаменующихся, полученные на первом экзамене. Подсчитать, сколько Человек не допущено ко второму эктамену. Напишите решение пожалуйста. Заранее большое спасибо.
Здравствуйте, Илья! Эх, не поступишь ты в ВУЗ, а может и вылетишь, если уже поступил! :) А сам писать не пробовал, это же элементарные программы!!! Попытайся, напиши, а мы исправим если что! Ответ отправлен: 10.12.2003, 01:38 Отправитель: Duncan MacLeod Отвечает Vitally
Приветствую Вас, Илья! Программы в приложении. Если нужны коментарии и/илидополнения, пиши. ICQ 126039422 Yahoo: b_vitally
Приложение: Ответ отправлен: 10.12.2003, 16:45 Отправитель: Vitally Отвечает Boriss
Здравствуйте, Илья! Ну и вопросики Вам задают - ну просто звери! .... Разве с такими без поллитра разберешься ... Товарищи! Детей спаивают! :))
Приложение: Ответ отправлен: 10.12.2003, 12:11 Отправитель: Boriss Отвечает Tancho
Добрый день, Илья! Предполагаю что все что тебе нужно находится в Приложение!
Приложение: Ответ отправлен: 11.12.2003, 12:40 Отправитель: Tancho Отвечает vitya
Здравствуйте, Илья! решение только задач в виде функций.
Приложение: Ответ отправлен: 12.12.2003, 09:11 Отправитель: vitya
Вопрос № 365
Уважаемые эксперты! Очень нужна, ну просто необходима программа! Да ещё и игровая!!! Один вводит 10 символов рус алф., а второй угадывает(вводит свои 10).Нужно подсчитать и вывести кол-во правильно угаданных символов.Прога на множества, но вот как это применить?!?
Здравствуйте, Ludik! У меня в 2000 Винде клава,в досе, не переключается на русский. Я написал программу для английских букв. Удачи.
Приложение: Ответ отправлен: 11.12.2003, 23:54 Отправитель: Vitally Отвечает fC
Здравствуйте, Ludik! Вот. const MAX_CHAR=10; var buf1,buf2:array [0..MAX_CHAR] of char; i,ugadano:integer; begin Write('Player 1. Vvedite 10 chars i nazhmite Enter: '); ReadLn(buf1); Write('Player 2. Vvedite 10 chars i nazhmite Enter: '); ReadLn(buf2); for i:=1 to MAX_CHAR do if buf1[i]=buf2[i] then inc(ugadano); WriteLn('Uradano:= ',ugadano); ReadLn; end. Замечание. Цикл сравнения начинается с 1 т.к. функция ReadLn использует buf1 и buf2 как тип String поэтому в buf1[0] и buf2[0] записывает длину строки, в нашем случае это число 10 и сравнивать buf1[0] и buf2[0] не нужно. Ответ отправлен: 10.12.2003, 18:33 Отправитель: fC Отвечает Tancho
Здравствуйте, Ludik! Если я тебе правилно поняль, вот смотри Приложение!
Приложение: Ответ отправлен: 11.12.2003, 16:52 Отправитель: Tancho Отвечает Boriss
Приветствую Вас, Ludik! Вот, играйте
Приложение: Ответ отправлен: 10.12.2003, 14:56 Отправитель: Boriss
Вопрос № 366
Можно ли в Паскале создать такую программу, которая при включении компа начинала свою работу, если можно, то как?
Здравствуй, Nik! Можно, если напишешь command.com :)) Если серьезно: нельзя ни на каком языке. Для автоматической загрузки программы ПОСЛЕ загрузки системы, ее имя прописывается в файле autoexec.bat или в реестре Виндов. Ответ отправлен: 10.12.2003, 16:53 Отправитель: Vitally Отвечает Boriss
Здравствуйте, Nik! Вы хотите написать свой загрузчик? В принципе можно, но такие вещи делают на ассемблере или на С. Почитайте о BIOS Ответ отправлен: 10.12.2003, 17:02 Отправитель: Boriss Отвечает Jact M Anchorite
Доброе время суток, Nik! Ну причем тут паскаль? Ежли ты загрузчик написать хочешь - так это тебе в раздел по асме :))) Аежли чтоб прога после загрузки ОС грузилась - то читай факи по той ОС, что у тебя стоит :)) Ответ отправлен: 10.12.2003, 16:44 Отправитель: Jact M Anchorite Отвечает fC
Здравствуйте, Nik! Можно, и не только в паскале. На любом языке программирования. Я вижу два способа - Загрузчик (программа прописывающая себя в загрузочную область диска) - Запускаемая и Autoexec.bat’а (актуально для DOS,Win95-98,переделанного ME и любой другой которая запускается из DOSа)
Ответ отправлен: 10.12.2003, 14:58 Отправитель: fC Отвечает sir henry
Доброе время суток, Nik! Это не зависит от стиля написания программы. Есть ряд пунктов, предусмотренных самой операционкой, для запуска программ при загрузке компьютера: 1. Для DOS. Нужно прописать название программы в файле autoexec.bat 2. Для Windows. Поместить ярлык программы в каталог меню "Автозагрузка" 3. Для Windows. Поместить название программы в ключ реестра "Run". Если Вам нужно, чтобы программа начинала работат ДО загрузки операционной системы, то Вам нужно заменить стандартный загрузчик из boot-сектра загрузочного диска загрузчиком своей программы. Так что Вам нужно, уточните :). Ответ отправлен: 11.12.2003, 04:13 Отправитель: sir henry Отвечает Tancho
Приветствую Вас, Nik! 1)Если ты имеешь в Предвид с самого пуска т.е. перед загрузкой ОС - то надо твоя прогу встроит в загрузочны сектор основного диска, а ето не простое дело!Уверяю!; 2) Если имеешь в виду после загрузки ОС, то нато прописат путь к прогу в Autoexec.bat для DOS или в Автозагружчик Windows'а и после загрузки ОС прогу всегда будет стартоватся. Ответ отправлен: 11.12.2003, 13:14 Отправитель: Tancho Отвечает Trubler
Доброе время суток, Nik! Есть несколько способов. Например, добавить строку запуска программы в Autoexec.bat или Config.sys. В Windows можно добавить эту же строку в реестр "HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun".
Ответ отправлен: 13.12.2003, 05:34 Отправитель: Trubler
Вопрос № 367
Вечер добрый, умные люди, не подскажите начинающему как в Turbo Pascal с модемом работать(можно в ссылках). Есть набор AT команд к модему,я пробовал алгоритм, как в приложении.
Доброе время суток, Pavel! А зачем это писать в Паскале? Винды иногда только эмулируют работу с портами в досовских программмах, или делают вид, что эмулируют. У меня нет модема, так что проверить рабоспособность Вашего кода не могу Ответ отправлен: 10.12.2003, 19:08 Отправитель: Boriss Отвечает fC
Здравствуйте, Pavel! Вот линк на работу с COM портами, там и про работу с модемом есть немножко сурсов на паскале. http://pascal.sources.ru/comm/index.htm Удачи! Ответ отправлен: 10.12.2003, 18:56 Отправитель: fC Отвечает sir henry
Добрый день, Pavel! В какой операционной системе Вы работаете? В ДОСе напрямую таким образом к модему обращаться можно, в Windows - нельзя. Вам необходимо зайти на сайт pascal.sources.ru и там скачать себе необходимые модули для работы с модемом. Покопавшись в исходниках Вы поймете, что и как нужно делать. Если Вы работаете под Windows, то Турбо Паскаль - неудачный выбор. Лучше перейти на FreePascal или TMT Pascal, тогда Вы сможете работать с некоторыми портами или с памятью, как будто это в происходит в ДОСе. Ответ отправлен: 11.12.2003, 04:19 Отправитель: sir henry
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.