Моё меню Общее меню Пользователи Правила форума Все прочитано
Вернуться   uForum.uz > ИКТ и телеком > IT-индустрия > Софт > Программирование > Pascal, Delphi & Builder
Знаете ли Вы, что ...
...инструкция по установке аватара описана в Правилах форума.
<< Предыдущий совет - Случайный совет - Следующий совет >>

Pascal, Delphi & Builder Вопросы программирования касающиеся Pascal и Delphi


Ответить

 
Опции темы Опции просмотра
Старый 11.05.2009 13:43   #11  
Known ID Group uParty Member
Аватар для Dolphin
Оффлайн
Imperium of Man
Inquisitor
Сообщений: 5,990
+ 5,680  4,442/2,033
– 128  137/102

Russian FederationОтправить сообщение для Dolphin с помощью ICQОтправить сообщение для Dolphin с помощью Skype™Facebook
Цитата:
Сообщение от sergeyf1 Посмотреть сообщение
Даны натуральные числа a и b, причём b>0. Найти частное и остаток при делении a на b, оперируя лишь целыми числами и не используя операции div и mod, за исключением деления на 2 чётных чисел; число шагов не должно превосходить C1 log(a/b)+C2 для некоторых констант C1, C2.
Код:
int a, b, x, y;
x = a / b;
y = a % b;
div и mod не используются
Ответить 
Старый 11.05.2009 17:22   #12  
uParty Member Known ID Group
Аватар для DarkUser
Оффлайн
Служу Его Божественной Тени!
Сообщений: 1,671
+ 4,505  1,372/657
– 164  33/27

Uzbekistan
Цитата:
Сообщение от Timur Rasulov Посмотреть сообщение
Не понимаю я таких условий... Скоро скажут "сопроцессор не юзать, память не юзать"....
Это-ж не производственные задачи, а для студентов... штоб их думать заставить... походу безрезультатно.

Цитата:
Сообщение от Timur Rasulov Посмотреть сообщение
div и mod не используются
Цитата:
fDiv:= 0;

while a > b do
begin
inc(fDiv);
a := a-b;
end;
fMod := a;
это без жесткого ограничения по числу шагов.
иначе по ходу цикла суммировать b и отнимать уже сумму, для уменьшения числа шагов.
__________________
Are you my mommy?
Ответить 
Старый 11.05.2009 17:23   #13  
uParty Member Known ID Group
Аватар для DarkUser
Оффлайн
Служу Его Божественной Тени!
Сообщений: 1,671
+ 4,505  1,372/657
– 164  33/27

Uzbekistan
Оффтоп:
Цитата:
Сообщение от Timur Rasulov Посмотреть сообщение
Скоро скажут "сопроцессор не юзать, память не юзать"....
ну так классика, поменять местами значение двух числовых переменных, не использую третью
__________________
Are you my mommy?
Ответить 
Старый 11.05.2009 19:01   #14  
uParty Member Known ID Group
Аватар для DarkUser
Оффлайн
Служу Его Божественной Тени!
Сообщений: 1,671
+ 4,505  1,372/657
– 164  33/27

Uzbekistan
Цитата:
Сообщение от sergeyf1 Посмотреть сообщение
Составить программу на языке программирования и в блок-схеме.
Даны натуральные числа n и k, n>1. Напечатать k десятичных знаков числа 1/n. При наличии двух десятичных разложений выбирается то из них, которое не содержит девятки в периоде. Программа должна использовать только целые переменные.
Истина где-то рядом:
Цитата:
r := n;
l := 10;

write('0.');
for i := 0 to k - 1 do
begin
d := 0;

while r < l do
begin
l := l - r;
inc(d);
end;
l := l * 10;
write(d);
end;
__________________
Are you my mommy?
Ответить 
Реклама и уведомления
Старый 11.05.2009 23:03   #15  
Real ID Group uParty Member Ultimate
Аватар для Nadir Zaitov
Оффлайн
Сообщений: 13,210
+ 4,958  9,176/3,940
– 170  137/105

UzbekistanОтправить сообщение для Nadir Zaitov с помощью Skype™
Цитата:
Сообщение от DarkUser Посмотреть сообщение
Истина где-то рядом:
А не слишком сложно?
Код:
Readln(N);
Readln(K);
L:=1;
Write('0.');
for i := 1 to k do
      begin
          L:=L*10;
          write(L div N);
          L:=L mod N;
      end;
end.
__________________
Тот факт, что медуза выжила 650 миллионов лет без мозгов, даёт надежду многим.

Последний раз редактировалось Nadir Zaitov; 11.05.2009 в 23:07.
Ответить 
Старый 11.05.2009 23:23   #16  
Real ID Group uParty Member Ultimate
Аватар для Nadir Zaitov
Оффлайн
Сообщений: 13,210
+ 4,958  9,176/3,940
– 170  137/105

UzbekistanОтправить сообщение для Nadir Zaitov с помощью Skype™
Цитата:
Сообщение от DarkUser Посмотреть сообщение
это без жесткого ограничения по числу шагов. иначе по ходу цикла суммировать b и отнимать уже сумму, для уменьшения числа шагов.
Код:
 
Var M: Array[1..64] of Integer;
     A, B, N, X, i:Integer;
 
Begin
readln(A,B);
i:=0;
X:=B;
while A>X do
       begin 
           inc(i);
           M[i]:=X;
           X:=2*X; {в теории лучше сдвиг влево, но это не наглядно :)}
       end;
 
while A>B do
       begin
           if A>M[i] then begin
                                A:=A-M[i];
                                N:=N+2^i; {в теории опять-же лучше сдвиг:)}
                               end;
           dec(i)
       end;
writeln("A Div B:=";N);
writeln("A Mod B:=";A);
end.
__________________
Тот факт, что медуза выжила 650 миллионов лет без мозгов, даёт надежду многим.
Ответить 
Старый 11.05.2009 23:27   #17  
Real ID Group uParty Member Ultimate
Аватар для Nadir Zaitov
Оффлайн
Сообщений: 13,210
+ 4,958  9,176/3,940
– 170  137/105

UzbekistanОтправить сообщение для Nadir Zaitov с помощью Skype™
Цитата:
Сообщение от sergeyf1 Посмотреть сообщение
Составить программу на языке программирования и в блок-схеме. Дано натуральное число n>1. Определить длину периода десятичной записи дроби 1/n.
А эта задачка была на олимпиаде для школьников в наши годы Откудова сей перечень задачек?
__________________
Тот факт, что медуза выжила 650 миллионов лет без мозгов, даёт надежду многим.
Ответить 
Старый 12.05.2009 15:02   #18  
uParty Member Known ID Group
Аватар для DarkUser
Оффлайн
Служу Его Божественной Тени!
Сообщений: 1,671
+ 4,505  1,372/657
– 164  33/27

Uzbekistan
Оффтоп:
Цитата:
Сообщение от Nadir Zaitov Посмотреть сообщение
А не слишком сложно?
Решил по аналогии с предыдущей не пользовать div и mod
__________________
Are you my mommy?
Ответить 
"+" от:
Старый 12.05.2009 16:52   #19  
Real ID Group uParty Member Ultimate
Аватар для Nadir Zaitov
Оффлайн
Сообщений: 13,210
+ 4,958  9,176/3,940
– 170  137/105

UzbekistanОтправить сообщение для Nadir Zaitov с помощью Skype™
Цитата:
Сообщение от sergeyf1 Посмотреть сообщение
Дано натуральное число n>1. Определить длину периода десятичной записи дроби 1/n.
Код:
var A:array[1..1000] of Integer;
     L,i,j,N,K: Intger; 
begin
Readln(N);
L:=1;
i:=0;
While i>=0 do
      begin
          inc(i)
          L:=L*10;
          L:=L mod N;
          A[i]:=L;
          if i>1 than 
                      for j:=1 to i-1 do
                               if A[j]:=L than 
                                            begin
                                                K:=j-i;
                                                i:=-1;
                                            end;
      end;
Writeln(K);
end.
__________________
Тот факт, что медуза выжила 650 миллионов лет без мозгов, даёт надежду многим.
Ответить 
Старый 12.05.2009 17:17   #20  
Real ID Group uParty Member Ultimate
Аватар для Nadir Zaitov
Оффлайн
Сообщений: 13,210
+ 4,958  9,176/3,940
– 170  137/105

UzbekistanОтправить сообщение для Nadir Zaitov с помощью Skype™
Цитата:
Сообщение от sergeyf1 Посмотреть сообщение
Задача 8. Составить программу на языке программирования и в блок-схеме. Дан двумерный массив целых чисел. Найти количество различных чисел среди элементов этого массива.
Тут в теории: разложить двумерный массив в одномерный (пишете функцию, эммулирующую одномерный массив), далее сортируете члены в одномерном массиве стандартными методами. Далее одним циклом вычисляете сколько там одинаковых/различных элементов...
__________________
Тот факт, что медуза выжила 650 миллионов лет без мозгов, даёт надежду многим.
Ответить 
Ответить
Опции темы
Опции просмотра




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Advertisement System V2.5 By Branden
OOO «Единый интегратор UZINFOCOM»


Новые 24 часа Кто на форуме Новички Поиск Кабинет Все прочитано Вверх