![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Ganz |
![]() ![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Дан вещественный массив x(n). Найти элементы массива, значение которого наиболее близко к какому-нибудь целому числу.
В данной программе надо чтобы при запуске выводился на экран начальный массив из вещественных чисел(отрицательных и положительных) и после от туда выбирались элементы наиболее близкие какому нибудь целому числу . Помогите плиз ![]() Сообщение отредактировано: Ganz - 15.06.2008 15:55 |
![]() ![]() |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Тебе нужно найти элемент массива X, для которого значение abs(x[i] - value) будем минимальным, где value - число которое ты вводишь
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Ganz |
![]()
Сообщение
#3
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата Тебе нужно найти элемент массива X, для которого значение abs(x[i] - value) будем минимальным, где value - число которое ты вводишь честное слово я в этом нуб и разбираться щас нет времени ,может кто программку напишет ? |
Ganz |
![]()
Сообщение
#4
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Плизз помогите написать программу (если надо могу свои исходники выложить если помогут но они скорее всего не правильны...)
|
andriano |
![]()
Сообщение
#5
|
Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: ![]() ![]() ![]() |
Тогда ты ошибся(-лась) разделом.
|
Ganz |
![]()
Сообщение
#6
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата Тогда ты ошибся(-лась) разделом. Всмысле ? Он! |
klem4 |
![]()
Сообщение
#7
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Покажи что пробовал делать, и скажи с чем конкретно проблема, программа на 3 строчки ...
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Ganz |
![]()
Сообщение
#8
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
const Проблема в то что не выводиться массив с вещественными числами ,а я сам его вважу (а вот как сделать чтоб сам выводился незнаю ) Добавлено через 17 мин. Есть еще какой-то способ без использование "frac" ,там как то вычитанием из вещественного масива целого ,для получения целой части ,вроде как-то так )))) Вот незнаю как ![]() |
мисс_граффити |
![]()
Сообщение
#9
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Цитата Проблема в то что не выводиться массив с вещественными числами ,а я сам его вважу (а вот как сделать чтоб сам выводился незнаю ) вводился или выводился? Цитата res:=1-(1-frac(x[i])); а нельзя просто Код res:=frac(x[i]); ? -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Ganz |
![]()
Сообщение
#10
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
смысл в том что у меня на экран должен выводиться первоначальный массив из вещественых чисел в том числе и отрицательные ,а из них выбирались приблеженно целые
Машина случайным образом сама заполняет массив (причем заполняет массив вещественными числами как отрицательными так и положительными ) через Random Добавлено через 11 мин. Попробывал сделать так Uses crt; Результат получается таков ,что выводять целые числа =(( ,а нужны вещественые (положительные и отрицательные) .
Сообщение отредактировано: Ganz - 16.06.2008 16:55 |
Ganz |
![]()
Сообщение
#11
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вот еще повазился с прогой и получилось так :
Вот результат программы :
Вот теперь незнаю правильно ли это или нет ,подскажите? ![]() |
мисс_граффити |
![]()
Сообщение
#12
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Неправильно...
Смотри сам - наиболее близким к целому является 90.00 А у тебя в ответе совсем другое число. Ошибка в том, что ты берешь остаток не по модулю, а со знаком. попробуй так: Код uses crt; const n=10; var x: array [1..n] of real; i,k : integer; min,res : real; begin clrscr; randomize; writeln ('Ishodnii massiv'); for i:=1 to n do begin x[i]:=random(99)+random; if random > 0.5 then x[i]:=-x[i]; end; min:=1; for i:=1 to n do begin if abs(frac(x[i]))>=0.5 then res:=1-abs(frac(x[i])) else res:=abs(frac(x[i])); if res<min then begin min:=res; k:=i; end; end; for i:=1 to n do write (x[i]:0:3 ,' '); writeln; writeln ('Rezultat: ',x[k]:0:3); readln; end. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Ganz |
![]()
Сообщение
#13
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
Спасибо ,только вот в результате целого числа не получаеться ((((((((((( там выбираються разные числа почему и с + и с - ....
Вторая часть программы не рабочая... В чем может быть проблема ? Сообщение отредактировано: Ganz - 17.06.2008 18:22 |
kosyak |
![]()
Сообщение
#14
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 100 Пол: Мужской Репутация: ![]() ![]() ![]() |
Что-то я тебя не понимаю... Вроде мисс_граффити все так сделала. Если хочешь чтоб выводилось близкое целое число то поставь так:
Код writeln ('Rezultat: ',round(x[k])); |
Ganz |
![]()
Сообщение
#15
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
У меня работает нормально - 5 раз проверял (правда, на 20 числах) - всё правильно выводит... Не понимаю, где у меня проблема...
|
мисс_граффити |
![]()
Сообщение
#16
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
если работает - какие проблемы?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
![]() ![]() |
![]() |
Текстовая версия | 20.06.2025 3:04 |