Четверг, 09.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 1
  • 1
Модератор форума: Seqular, Pavel  

Задачки -нужна помощь
imhotepДата: Понедельник, 17.03.2008, 06:05 | Сообщение # 1
Новичок
Группа: Пользователи
Сообщений: 1
Репутация: 0
Замечания: 0%
Статус: Offline
Я знаю, что вы будете смеяться, но я новичок.
Помогите:
Составить программу, которая печатает таблицу умножения и сложения натуральных чисел в шестнадцатиричной системе счисления.

Составить алгоритм решения задачи: сколько можно купить быков, коров и телят, платя за быка 10р.,за корову - 5р., а за теленка - 0,5р., если на 100р. надо купить 100 голов скота.

Покупатель должен заплатить в кассу S рублей. У него имеются 1, 2, 5, 10, 50, 100,500 рублей. Сколько купюр каждого достоинства отдаст покупатель, если он начнет платить с самых крупных?

Помогите пожалуйста, а то я учусь пользоваться циклами.

 
AlexanderДата: Четверг, 20.03.2008, 08:47 | Сообщение # 2
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Ну так если мы просто решим тебе эти задачи, то это не поможет тебе понять суть. Давай ты сам попробуешь их решить, а мы тебя поправим и объясним в чём твои ошибки. Задачки очень простые, в решении первой задачки тебе может помочь эта функция:
Code
function DecToHex(S:Word):string;
var
    Temp:word;
    Result:string[5];
    i:byte;
begin
    i:=1;
    Result:='';
    repeat
       Temp:=S mod 16;
       if Temp<10 then
          Result:=Result+chr(Temp+$30)
       Else
          case Temp of
             10:
                Result:=Result+'A';
             11:
                Result:=Result+'B';
             12:
                Result:=Result+'C';
             13:
                Result:=Result+'D';
             14:
                Result:=Result+'E';
             15:
                Result:=Result+'F';
          end;
       S:=S shr 4;
       inc(i);
    until S=0;
    for i:=1 to BYTE(Result[0]) shr 1 do
       begin
          char(Temp):=Result[i];
          Result[i]:=Result[BYTE(Result[0])-i+1];
          Result[BYTE(Result[0])-i+1]:=char(Temp);
       end;
    DecToHex:=Result;
end;

Она принимает в качестве единственного параметра число, а возвращает строку, содержащую это число в шестнадцатиричной системе.
З.Ы. Извините если код совсем кривой, просто я сейчас в не очень трезвом состоянии wacko .


Скажем дружно- нафиг нужно!
 
PavelДата: Среда, 09.04.2008, 14:24 | Сообщение # 3
Приближенный
Группа: Модераторы
Сообщений: 210
Репутация: 17
Замечания: 0%
Статус: Offline
Quote (imhotep)
Покупатель должен заплатить в кассу S рублей. У него имеются 1, 2, 5, 10, 50, 100,500 рублей. Сколько купюр каждого достоинства отдаст покупатель, если он начнет платить с самых крупных?

Здесь смысл такой: ищещь целую часть от деления S на достоинство купюры. Допустим, N. Потом в переменную S переприсваиваем S - достоинство купюры * N; далее делаем также с другим достоинством купюры и закидываем колво купюр в переменную N1.
Аля:
N := S div 500;
S := S - N * 500;
N1 := S div 100;
S := S - N1 * 100;
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;