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

RFpro.ru: Программирование на Delphi и Lazarus


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

Лучшие эксперты в разделе

puporev
Статус: Профессор
Рейтинг: 21
∙ повысить рейтинг »
Лысков Игорь Витальевич
Статус: Мастер-Эксперт
Рейтинг: 0
∙ повысить рейтинг »
Асмик Гаряка
Статус: Советник
Рейтинг: 0
∙ повысить рейтинг »

Pascal / Delphi / Lazarus

Номер выпуска:1893
Дата выхода:22.09.2021, 01:15
Администратор рассылки:Зенченко Константин Николаевич (Старший модератор)
Подписчиков / экспертов:8 / 38
Вопросов / ответов:3 / 10

Консультация # 197483: Уважаемые эксперты! Пожалуйста, ответьте на вопрос: Вычислить количество нечетных элементов в области выше обеих диагоналей и правее солбца k. (хотелось бы через процедуры) ...
Консультация # 31481: Подскажите метод ипользования сканера документов, желательно через локальную сеть....
Консультация # 28640: Здравствуйте уважаемые эксперты! где в этом коде ошибка? getball - переменная см.приложение Спасибо!...

Консультация # 197483:

Уважаемые эксперты! Пожалуйста, ответьте на вопрос:
Вычислить количество нечетных элементов в области выше обеих диагоналей и правее солбца k. (хотелось бы через процедуры)

Дата отправки: 22.12.2019, 23:39
Вопрос задал: dkhrebtovich (Посетитель)
Всего ответов: 1
Страница онлайн-консультации »


Консультирует puporev (Профессор):

Здравствуйте, dkhrebtovich!

Код [Pascal]
type mtr=array[1..20,1..20] of integer;
procedure matrix(var a:mtr;var n:integer);
var i,j:integer;
begin
repeat
writeln('Введите размер матрицы от 5 до 20');
readln(n);
until n in [5..20];
writeln('Матрица');
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=10+random(90);
    write(a[i,j]:3);
   end;
  writeln;
 end;
end;
procedure count(a:mtr;n,k:integer);
var i,j,p,q:integer;
begin
q:=0;
p:=n div 2;//количество строк выше середины матрицы
if n mod 2=0 then p:=p-1;
for i:=1 to p do
for j:=i+1 to n-i do
if(j>k)and odd(a[i,j]) then inc(q);
write('Количество нечетных элементов выше диагоналей и правее столбца ',k,'=',q)
end;
var a:mtr;
    n,k:integer;
begin
matrix(a,n);
repeat
write('Введите номер столбца от 1 до ',n-2,' k=');
readln(k);
until k in [1..n-2];
count(a,n,k);
end.

Консультировал: puporev (Профессор)
Дата отправки: 23.12.2019, 08:37
Рейтинг ответа:

НЕ одобряю +2 одобряю!

Консультация # 31481:

Подскажите метод ипользования сканера документов, желательно через локальную сеть.

Дата отправки: 14.12.2005, 17:30
Вопрос задал: Negruzzi Cristian
Всего ответов: 2
Страница онлайн-консультации »


Консультирует Ataman N. N.:

Здравствуйте, Negruzzi Cristian!
Насколько я знаю, то сканер никак нельзя использовать по сети. Сам когда то хотел сканировать "чужим" сканером, но увы.

Консультировал: Ataman N. N.
Дата отправки: 14.12.2005, 19:25
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Denisss:

Здравствуйте, Negruzzi Cristian!
Ищите примеры и документацию по использованию TWAIN.
Через локальную сеть можно так:
На компьютере, где установлен сканер пишете серверную часть. Эта часть будет следить за обращением к сканеру, сканировать и передавать отсканированное по сети.
Для клиентов пишете клиентскую часть. Эта часть будет отсылать запросы на серверную часть (указывать разные параметры сканирования) и получать отсканированное от серверной части.
Единственное "НО" (хотя может и не единственное): Вам придется поискать документы и примеры по использованию TWAIN без отображения TWAIN-диалога. Иначе придется клиентам бегать на сервер, чтобы устанавливать параметры сканирования вручную при каждом сканировании.

Консультировал: Denisss
Дата отправки: 15.12.2005, 16:07
Рейтинг ответа:

НЕ одобряю 0 одобряю!

Консультация # 28640:

Здравствуйте уважаемые эксперты!
где в этом коде ошибка?
getball - переменная

см.приложение
Спасибо!

Дата отправки: 31.10.2005, 19:29
Вопрос задал: Sassoft
Всего ответов: 7
Страница онлайн-консультации »


Консультирует Ujin Antikvar:

Здравствуйте, Sassoft!

if (getball=40) then if ((StrToFloat(RxLabel40.Caption)*Random(100)/100)*StrToFloat(\'2\')) < StrToFloat(RxLabel23.Caption)*Random(100)/100) then......

Вот так должно работать ты просто сравнивал строку с числом

Удачи!!!!

Консультировал: Ujin Antikvar
Дата отправки: 31.10.2005, 19:43
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Архангельский Андрей Германови:

Здравствуйте, Sassoft!
if (getball=40) then if [(FloatToStr ](StrToFloat(RxLabel40.Caption)*Random(100)/100)*StrToFloat(\'2\')[)] < StrToFloat(RxLabel23.Caption)*Random(100)/100) then......

В квадратных скобках лишний код. Ты сравниваешь строку с Float.
Пиши ясный код и тогда сам сможешь найти ошибку, точнее она возникать не будет
Смотри приложение

И непонятно зачем все операции делать на RxLabel.Caption

Приложение:

Консультировал: Архангельский Андрей Германови
Дата отправки: 31.10.2005, 19:55
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Маренич Владимир:

Здравствуйте, Sassoft!

Пропущена скобка после <

if (getball=40) then if (FloatToStr(StrToFloat(RxLabel40.Caption)*Random(100)/100)*StrToFloat(\'2\')) < (StrToFloat(RxLabel23.Caption)*Random(100)/100) then......

Консультировал: Маренич Владимир
Дата отправки: 31.10.2005, 20:02
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Ерёмин Андрей:

Здравствуйте, Sassoft!
Тут много ошибок. Самая главная - вы пытаетесь сравнить String и Extended значения, т.е. число и строку. Кроме того, там есть лишняя скобка.
Правильный вариант:

if (getball=40) then
if (StrToFloat(RxLabel40.Caption)*Random(100)/100*StrToFloat(\'2\')) <
(StrToFloat(RxLabel23.Caption)*Random(100)/100) then ...

Консультировал: Ерёмин Андрей
Дата отправки: 31.10.2005, 20:16
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Schmak:

Здравствуйте, Sassoft!
Во-первых Вы сравниваете число Extended со строкой, так что первое преобразование StrToFloat лишнее , также в конце лишняя скобка:
if (getball=40) then
if (StrToFloat(RxLabel40.Caption)*Random(100)/100)*StrToFloat(\'2\') < StrToFloat(RxLabel23.Caption)*Random(100)/100 then.......

Консультировал: Schmak
Дата отправки: 01.11.2005, 05:20
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Ataman N. N.:

Здравствуйте, Sassoft!
Ошибка в следующем фрагменте кода:
if (FloatToStr(StrToFloat(RxLabel40.Caption)*Random(100)/100)*StrToFloat(\'2\')) < StrToFloat(RxLabel23.Caption)*Random(100)/100)
Здесь происходит сравнение строки с вещественным числом. Более верно будет:
if (StrToFloat(RxLabel40.Caption)*Random(100)/100)*StrToFloat(\'2\') < StrToFloat(RxLabel23.Caption)*Random(100)/100)

Консультировал: Ataman N. N.
Дата отправки: 01.11.2005, 10:17
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Консультирует Вадим Исаев ака sir Henry (Мастер-Эксперт):

Здравствуйте, Sassoft!
Вы строковое выражение сравниваете с числом - компилятору за Вас должно быть стыдно. :)

Консультировал: Вадим Исаев ака sir Henry (Мастер-Эксперт)
Дата отправки: 01.11.2005, 10:25
Рейтинг ответа:

НЕ одобряю 0 одобряю!


Оценить выпуск | Задать вопрос экспертам

главная страница  |  стать участником  |  получить консультацию
техническая поддержка

Дорогой читатель!
Команда портала RFPRO.RU благодарит Вас за то, что Вы пользуетесь нашими услугами. Вы только что прочли очередной выпуск рассылки. Мы старались. Пожалуйста, оцените его. Если совет помог Вам, если Вам понравился ответ, Вы можете поблагодарить автора - для этого в каждом ответе есть специальные ссылки. Вы можете оставить отзыв о работе портале. Нам очень важно знать Ваше мнение. Вы можете поближе познакомиться с жизнью портала, посетив наш форум, почитав журнал, который издают наши эксперты. Если у Вас есть желание помочь людям, поделиться своими знаниями, Вы можете зарегистрироваться экспертом. Заходите - у нас интересно!
МЫ РАБОТАЕМ ДЛЯ ВАС!


В избранное