2 / 2 / 0
Регистрация: 02.10.2016
Сообщений: 96
1

Как поделить

06.10.2016, 10:42. Показов 1016. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как поделить число на 16 в Pascal, не используя div, mod, all,shr.?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.10.2016, 10:42
Ответы с готовыми решениями:

Если число не делится на 3, то вычесть 1, в противном случае поделить на 3
за один ход с числом делается такая операция: если число не делится на 3,то вычитаем 1,а если...

Все элементы массива поделить на значение наибольшего элемента
Все элементы массива поделить на значение наибольшего элемента этого массива.

Три человека должны поделить между собой 21 бочонок
Три торговца должны поделить между собой 21 бочонок из которых 7 бочонков полных кваса, 7 полных на...

Поменять местами последний элемент массива с первым минимальным элементом, а затем поделить на заданное
Поменять местами последний элемент массива с первым минимальным элементом, а затем поделить на...

7
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
06.10.2016, 10:57 2
Pascal
1
2
3
4
5
6
7
8
var
  n,i:longint;
begin
  write('n=');readln(n);
  write(n,'/16=');
  while n>15 do begin n:=n-16;i:=i+1;end;
  writeln(i,', остаток:',n);
end.
Добавлено через 25 секунд
PS: А операция "/" разрешена?
1
2 / 2 / 0
Регистрация: 02.10.2016
Сообщений: 96
06.10.2016, 11:13  [ТС] 3
Не уверен, есть запасной вариант?
0
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
06.10.2016, 11:39 4
запасной вариант в коде
0
2 / 2 / 0
Регистрация: 02.10.2016
Сообщений: 96
06.10.2016, 11:42  [ТС] 5
А без while?
0
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
06.10.2016, 11:53 6
Цикл все равно быть должен.
0
CAPITAL OF ROCK!
1281 / 708 / 982
Регистрация: 03.03.2010
Сообщений: 2,286
06.10.2016, 13:33 7
но да, цикл всё равно будет фигурировать.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function Accur(eps: Real): Byte; //необязательная часть кода
var
    Result: Byte;
begin
    Result := 0;
    while (eps < 1) do
    begin
        Inc(Result);
        eps := eps * 10;
    end;
    Accur := Result;
end;
var
    a, b, c, d: Real;
begin
    Write('a='); ReadLn(a);
    Write('b='); ReadLn(b); //b := 16;
    c := Random * 100;
    Write('EPS='); ReadLn(d); d := Abs(d);
    while (Abs(b * c - a) >= d) do
        if (b * c > a)
        then
            c := c - Sqr(d)
        else
            c := c + Sqr(d);
    WriteLn('a/b=', c:0:Accur(d));
end.
0
охотник
1011 / 535 / 650
Регистрация: 29.09.2014
Сообщений: 1,083
06.10.2016, 20:29 8
Цитата Сообщение от Иван6699 Посмотреть сообщение
А без while?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure d16(n:integer;var ost,k:integer);
 begin
  if k*16<n
   then begin inc(k);d16(n,ost,k) end
   else begin 
         if k*16>n then dec(k);
         ost:=abs(k*16-n) 
        end
 end;  
var n,ost,k:integer;
begin 
 k:=1;ost:=0;
 writeln('n = ');readln(n);
 d16(n,ost,k);
 writeln(n,'/16 :');
 writeln('частное: ',k,' остаток: ',ost)
end.
0
06.10.2016, 20:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.10.2016, 20:29
Помогаю со студенческими работами здесь

Как поделить два натуральных числа, используя вычитание
Здравствуйте! Подскажите новичку, как поделить 2 натуральных числа используя только вычитание....

Поделить каждый элемент масива на предыдущий
Дан двухмерный массив. Поделить каждый его элемент на предыдущий, первый элемент оставить...

умножить и поделить 2 числа: а и b без остатка.
Здравствуйте) Я вот только начала осваивать паскаль и уже в тупике. Мне надо умножить и поделить 2...

Поделить одно число на другое с точностью до n знаков после запятой
Мне нужно поделить одно число на другое с точностю до n знаков после запятой! Помогите...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru