Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 552
от 22.01.2008, 11:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 240, Экспертов: 50
В номере:Вопросов: 7, Ответов: 12

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 118761: 1) Для какого наибольшего N можно вычислить значение (2n!) (это производение всех четных натуральных чисел, не превышающих 2n), пользуясь типом Integer? 2) Напишите программу, которая считывает текстовый файл и определяет, есть ли в нем символ z....
Вопрос № 118763: дан одномерный массив N=15 посчитать количество отрицаетльных элементов массива Заранее спасибо...
Вопрос № 118791: Как решить эту задачу! Найти произведение положительных элементов каждой строки матрицы А(6,5). Результат записать в вектор Р(6)....
Вопрос № 118795: ни как не могу решить задачу! Определить среднее геометрическое минимальных элементов массивов Х(10) и Y(15)....
Вопрос № 118819: Нужна срочно программа!я новичек в этом деле,еще мало что знаю) Создать числовой массив T [1..S].Значение S вводится с клавиатуры.Отобразить на экране сумму и среднее арифметическое всех положительных элементов. Заранее благодарен!)...
Вопрос № 118847: Здравствуйте уважаемые знатоки! Очень нужна ваша помощь. Помогите написать программу на тему "строки". Строка текста - слова, пробелы, знаки препинания. Текст размещен в одной или нескольких строках без переноса слов со строки на следу...
Вопрос № 118904: Здравствуйте, Эксперты! Помогите с задачкой! Есть текстовый файл, имеющий n строк. Каждая строка представляет собой 8-ми значное число. Необходимо отобрать числа удовлетворяющие нескольким условиям и записать их в новый файл, также, по одному на ...

Вопрос № 118.761
1) Для какого наибольшего N можно вычислить значение (2n!) (это производение всех четных натуральных чисел, не превышающих 2n), пользуясь типом Integer?
2) Напишите программу, которая считывает текстовый файл и определяет, есть ли в нем символ z.
3) Создайте массив из N элементов. Определите Max (используя функцию). Отсортируйте массив с помощью процедуры по возрастанию.
Отправлен: 16.01.2008, 12:21
Вопрос задал: Городцов Павел (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Delph
Здравствуйте, Городцов Павел !

Отвечу на первый вопрос. Для стандартного типа Integer максимальное значение составляет 32767. Теперь посмотрим значения факториалов: 6! = 720, 7! = 5040, 8! = 40320 - уже выходит за рамки допустимого диапазона. Значит под функцией факториала должен находиться аргумент не более 7. Поскольку мы считаем факториал от (2*n), то максимальным допустимым значением для n имеем 3 (исхожу из предположения, что n - целое, хотя факториал от вещественного значения - это уже совсем другая история, посложнее).

Если использовать тип Word (диапазон [0..65535]), то можно уже рассчитать 8!, т.е. для n максимальное значение возрастает до 4.
---------
Сомневайся во всём! Реальность часто бывает не такой, как мы о ней думаем.
Ответ отправил: Delph (статус: Студент)
Ответ отправлен: 16.01.2008, 13:08
Оценка за ответ: 5

Отвечает: Артём1983
Здравствуйте, Городцов Павел !
Отвечу на оставшиеся два вопрса.
Смотрите код программ в приложении.

Приложение:

---------
Программирование - дело Путное!

Ответ отправил: Артём1983 (статус: 8-ой класс)
Ответ отправлен: 16.01.2008, 21:11
Оценка за ответ: 5
Комментарий оценки:
Спасибо!


Вопрос № 118.763
дан одномерный массив N=15
посчитать количество отрицаетльных элементов массива
Заранее спасибо
Отправлен: 16.01.2008, 12:44
Вопрос задал: Голиков Алексей Николаевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: sergesus
Здравствуйте, Голиков Алексей Николаевич!

const
N=15;

var
A:array [1..N] of double;
S:double; {количество отрицательных элементов}
i:integer;
begin
S:=0;
for i := 1 to 15 do
if A[i]<0 then S:=S+1;

end.

Приложение:

Ответ отправил: sergesus (статус: 2-ой класс)
Ответ отправлен: 16.01.2008, 12:57

Отвечает: Djec
Здравствуйте, Голиков Алексей Николаевич!
В приложении решении вашей задачи. Удачи!

Приложение:

---------
"Если ты что-то делаешь, делай это хорошо. если же ты не можешь или не хочешь делать хорошо, лчуше совсем не делай" © Л.Н.Толстой"

Ответ отправил: Djec (статус: 7-ой класс)
Ответ отправлен: 16.01.2008, 20:59
Оценка за ответ: 5


Вопрос № 118.791
Как решить эту задачу!

Найти произведение положительных элементов каждой строки матрицы А(6,5). Результат записать в вектор Р(6).
Отправлен: 16.01.2008, 14:34
Вопрос задал: Лавицкас Ярослав Сергеевич (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Лавицкас Ярослав Сергеевич!
Программа в приложении.

Удачи!

Приложение:

Ответ отправил: Николай Владимирович / Н.В. (статус: Практикант)
Ответ отправлен: 16.01.2008, 18:49
Оценка за ответ: 5
Комментарий оценки:
хорошая работа. единственно коментарии иногда бы не помешали бы.... а так отлично)))


Вопрос № 118.795
ни как не могу решить задачу!

Определить среднее геометрическое минимальных элементов массивов Х(10) и Y(15).
Отправлен: 16.01.2008, 14:36
Вопрос задал: Лавицкас Ярослав Сергеевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Vassea
Здравствуйте, Лавицкас Ярослав Сергеевич!
Задача состоит из двух частей.
Во первых, необходимо найти минимальные элементы массивов.
После чего можно по формуле находить среднее геометрическое.
Сначала необходимо ввести оба массива (я думаю, Вы можете написать это сами).
Дале находим минимальные элементы.
Делать это будем в цикле for (так как нам уже известны длины массивов (10 и 15))
Сначала возьмем первый элемент в качестве минимального.
Потом будем сравнивать его со всеми остальными.
min1:=X[1];
for i:=2 to 10 do
if X[i] Такие же действия выполняем для массива Y (но минимальное значение уже записываем в min2).

Далее вычислим среднее геометрическое по фрмуле
sqrt(min1*min2)

Надо помнить, что произведение должно быть >= 0.
Если Вы хотите избежать сбоя работы программы при введенных отрицательных числах, поставьте условие выполнения вычисления среднего геометрического (if min1*min2>=0)
Надеюсь, что смог Вам помочь.
Ответ отправил: Vassea (статус: Студент)
Ответ отправлен: 16.01.2008, 19:04
Оценка за ответ: 4
Комментарий оценки:
мне нравится что вы хотите что бы я сам подумал над задачей конечно с вашей помощью) но единственный минус... я в двумерных масивах полный нуб....я конечно могу написать... тперь с вашими подсказками всё сам.... но у меня проблема с самим построением программы в начале....

Отвечает: Djec
Здравствуйте, Лавицкас Ярослав Сергеевич!
Решение задачи в приложении. Удачи!

Приложение:

---------
"Если ты что-то делаешь, делай это хорошо. если же ты не можешь или не хочешь делать хорошо, лчуше совсем не делай" © Л.Н.Толстой"

Ответ отправил: Djec (статус: 7-ой класс)
Ответ отправлен: 16.01.2008, 20:52
Оценка за ответ: 5
Комментарий оценки:
ВОТ СПАСИБО)


Вопрос № 118.819
Нужна срочно программа!я новичек в этом деле,еще мало что знаю)

Создать числовой массив T [1..S].Значение S вводится с клавиатуры.Отобразить на экране сумму и среднее арифметическое всех положительных элементов.

Заранее благодарен!))
Отправлен: 16.01.2008, 15:49
Вопрос задал: AHAPX (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 7)

Отвечает: sergesus
Здравствуйте, AHAPX!
Вот с динамическим массивом.
в приложении со статическим,(задаем длинный массив и S - до каково элемента производятся расчеты);

var
i,S,k:integer;
Aref,Sum:double;
T:array of double;
begin
Sum:=0;
Writeln('Vvedite S');
readln(S);
SetLength(T, S);
for i := Low(T) to High(S) do
if T[i]>0 then
begin
Sum:=Sum+T[i];
inc(k);
Aref:=Sum/k;
end;
writeln('Sum=',Sum);
writeln('Aref',Aref);
end.

Приложение:

Ответ отправил: sergesus (статус: 2-ой класс)
Ответ отправлен: 16.01.2008, 17:12
Оценка за ответ: 4

Отвечает: Николай Владимирович / Н.В.
Здравствуйте, AHAPX!

Мой вариант решения в приложении.

Удачи!

Приложение:

Ответ отправил: Николай Владимирович / Н.В. (статус: Практикант)
Ответ отправлен: 16.01.2008, 17:44
Оценка за ответ: 5


Вопрос № 118.847
Здравствуйте уважаемые знатоки! Очень нужна ваша помощь. Помогите написать программу на тему "строки".
Строка текста - слова, пробелы, знаки препинания. Текст размещен в одной или нескольких строках без переноса слов со строки на следующую строку. Необходимо определить количество слов, количество предложений в тексте, среднюю длинну слов (общая длина слов, деленная на количество слов), наибольшее и наименьшее количество слов в предложениях текста.
Жду ваших ответов!
Отправлен: 16.01.2008, 17:56
Вопрос задала: Nadenka (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Nadenka!
Программа в приложении.

Хочу обратить Ваше внимание на следующие особенности программы:
1. предложение заканчивается одним знаком, входящим в константу endofsentense.
2. Для предложений вроде "hello!!!!!!!!!!!" я не гарантирую правильность выполнения - это экзотика и в условии о таком случае ничего не сказано.
3. Знаков препинания и пробелов подряд может идти любое количество.

Удачи!

Приложение:

Ответ отправил: Николай Владимирович / Н.В. (статус: Практикант)
Ответ отправлен: 19.01.2008, 22:46
Оценка за ответ: 5
Комментарий оценки:
Сасибо, а то я уже потеряла надежду.

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Nadenka!

В приложении программа, которая обрабатывает многоточие как одну точку.
Пердложения могут переносится в другие строки и последнее предложение может не заканчиватся точкой.
Все сделано без строковых функций.
Удачи!

Приложение:

---------
И только наступив на грабли мы приобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: Профессионал)
Украина, Киев
Тел.: +380958380164
Адрес: Украина г.Киев
----
Ответ отправлен: 21.01.2008, 19:10
Оценка за ответ: 5
Комментарий оценки:
Здорово! Все так подробно,с комментариями. Сразу все понятно. Огромное спасибо!!!


Вопрос № 118.904
Здравствуйте, Эксперты! Помогите с задачкой!
Есть текстовый файл, имеющий n строк. Каждая строка представляет собой 8-ми значное число. Необходимо отобрать числа удовлетворяющие нескольким условиям и записать их в новый файл, также, по одному на строку.

Итак, насколько я понимаю, необходимо 1) создать n мерный массив типа string и записать в него все числа из первого файла. (вопрос1: как присвоить n-ой ячейке значение n-ой строки?) 2) каждую ячейку этого массива проверить на удовлетворение условиям. При положительном результате записать значение ячейки в новый текстовый файл. (вопрос2: как записать в другой файл отобранные значения?)
Отправлен: 17.01.2008, 01:28
Вопрос задал: VinnyPuh (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Николай Владимирович / Н.В.
Здравствуйте, VinnyPuh!
Можно сделать проще (без массива).
Циклом for считываете n чисел из первого файла и сразу же проверяете их на выполнение условий. Если условие выполняется, записываете число во второй файл.
Чтобы открыть второй файл для записи, надо написать следующий код:
Assign(file2, 'название файла');
ReWrite(file2);

Для записи в файл числа а надо написать:
WriteLn(file2, a);

В конце обязательно надо закрыть второй файл: Close(file2)

Если будут вопросы, пишите в мини-форум.

Удачи!
Ответ отправил: Николай Владимирович / Н.В. (статус: Практикант)
Ответ отправлен: 17.01.2008, 10:19
Оценка за ответ: 5
Комментарий оценки:
Спасибо!


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.70 от 17.01.2008
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное