IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Значение Mod, помогите разобраться
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 69
Пол: Мужской
Реальное имя: Игорь

Репутация: -  0  +


Задачка:
Вычислить дробную часть среднего арифметического трех заданных вещественных чисел.
Я делал так:

uses crt;
var a,b,c,p:integer;
begin clrscr;
write('‚ўҐ¤ЁвҐ 3 зЁб« :'); readln(a,b,c);
p:=(a+b+c) mod 3;
Writeln;
Writeln('„а®Ў­  з бвм б।­ҐЈ®  аЁд¬ҐвЁзҐбЄ®Ј® 3 зЁбҐ« а ў­ : ',p);
readln;
end.



В учебнике написано, что mod это остаток от деления с остатком. Тоесть, как я понял,
11 mod 3 должно равняться 6666... .
Но когда ввожу значения (4,3,4), ответ получаеться 2.
В чем дело? Я не так понял?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата
mod это остаток от деления с остатком
no1.gif Это остаток от деления нацело...

Т.е. 11 div 3 = 3 (целых), а теперь этот результат снова умножь на 3... И какая разница между первоначальным числом и полученным произведением?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 69
Пол: Мужской
Реальное имя: Игорь

Репутация: -  0  +


Разница получаеться 2, спасибо.
С mod`ом чуток разобрался.

Получилось так, вроде правильно:


uses crt;
var a,b,c,p:integer;
begin clrscr;
write('‚ўҐ¤ЁвҐ 3 зЁб« :'); readln(a,b,c);
p:=(a+b+c) mod 3;
Writeln;
Writeln('„а®Ў­  з бвм б।­ҐЈ® ЈҐ®¬ҐваЁзҐбЄ®Ј® 3 зЁбҐ« а ў­ : ',p/3:3:3);
readln;
end.



А как можно сделать чтобы ответ был в виде дроби(1/3;2/3)?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






WriteLn(p, '/3');
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

Репутация: -  11  +


Цитата
А как можно сделать чтобы ответ был в виде дроби(1/3;2/3)?

Цитата
WriteLn(p, '/3');

Я добавил бы еще проверку:

uses crt;
var a,b,c,p:integer;
begin
clrscr;
write('Enter a,b,c: ');
readln(a,b,c);
p:=(a+b+c) mod 3;
Writeln;
if p=0 then
writeln('Result: ',p)
else
writeln('Result: ',p, '/3');
readln;
end.



--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Пионер
**

Группа: Пользователи
Сообщений: 69
Пол: Мужской
Реальное имя: Игорь

Репутация: -  0  +


Спасибо за помошь! good.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 38
Пол: Женский

Репутация: -  0  +


Цитата(Вацура @ 7.12.2006 19:36) *

Задачка:
Вычислить дробную часть среднего арифметического трех заданных вещественных чисел.

var a,b,c:real;
...

p:=frac((a+b+c)/3)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






mod выдает остаток т.е 11/3=3 целых т.е 9 а 11-9=2 из этого следует что это правильно!
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Перед тем как писать вы бы посмотрели на дату,я думаю в 2011 году уже не актуально отвечать на вопрос 2006 года.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 14:17
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name