Задачки для разминки. (Простенькие такие...)
Модератор: Модераторы разделов
-
- Сообщения: 62
- ОС: Debian
Re: Задачки для разминки.
они шли с промежутком << 1 часа?
-
- Сообщения: 482
Re: Задачки для разминки.
Да 
Время (А2 - А1) = 1 час
Время (В2 - В1) = 1 час
Время (ВX - AX) < 1 час
Время теста - спонтанное

Время (А2 - А1) = 1 час
Время (В2 - В1) = 1 час
Время (ВX - AX) < 1 час
Время теста - спонтанное

Пойдём на рыбалку !
-
- Сообщения: 62
- ОС: Debian
Re: Задачки для разминки.
вопрос из этой-же серии: какова вероятность того, что я выгляну за окно и увижу 50 мужчин подряд.
-
- Сообщения: 151
- ОС: Debian
Re: Задачки для разминки.
Ну. либо увидишь, либо не увидишь ... иными словами, 50%.


Параллельные извилины не пересекаются ...
-
- Сообщения: 156
- ОС: Zenwalk Linux, Windows XP
Re: Задачки для разминки.
Упростим задачу. Тогда, предположим что "увиденный человек" - первый замеченный объект, опознанный как человек определенного пола. Также предположим что выглядывая в окно мы можем видеть одного человека, несколько человек или никого. Для данной задачи первые два события могут быть объеденины в одно - "видеть минимум одного человека". Однако нас также интересует пол увиденного человека, тогда имеет смысл определить следующие события:
1. Увидеть мужчину.
2. Увидеть женщину.
3. Не увидеть никого.
Предположим что все три события независимы, случайны и (пожалуй очевидно) взаимо исключающи. Теперь можно определить вероятность события (1) --- 1/3. Вероятность не увидеть мужчину --- 2/3. Так как задача представляет геометрическое распределение, вероятность увидеть 50 мужчин подряд равна вероятности увидеть первую женщину или не увидеть никого на 51-й попытке, и численно равна (1/3^50) * (2/3).
Zenwalk 4.0
TOSHIBA Satellite A100
TOSHIBA Satellite A100
-
- Сообщения: 62
- ОС: Debian
Re: Задачки для разминки.
нет. у меня под окном эпизодически ходит 5 рот курсантов
-
- Сообщения: 115
- ОС: ubuntu
-
- Сообщения: 1655
- Статус: Tux in the rain
- ОС: Linux x86_64
Re: Задачки для разминки.
Простая задачка: как известно, в каком-либо конкурсе побеждает тот, кто занимает 1-е место. Есть ли у этого правила исключения и если да, то какие?
(варианты про последнее место=первое не считаются)
(варианты про последнее место=первое не считаются)
Всего лишь 26 литров пива достаточно человеку для удовлетворения ежедневной потребности в кальции. Здоровое питание - это так просто!
http://atolstoy.wordpress.com
http://atolstoy.wordpress.com
-
- Сообщения: 151
- ОС: Debian
Re: Задачки для разминки.
Занявшего первое место, дисквалифицировали за допинг. Победитель - участник, занявший второе место. 

Параллельные извилины не пересекаются ...
-
- Сообщения: 1655
- Статус: Tux in the rain
- ОС: Linux x86_64
Re: Задачки для разминки.
Ловко, но неправильно

Всего лишь 26 литров пива достаточно человеку для удовлетворения ежедневной потребности в кальции. Здоровое питание - это так просто!
http://atolstoy.wordpress.com
http://atolstoy.wordpress.com
-
- Сообщения: 482
-
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: Задачки для разминки.
вы хотя-бы пишите, на каком это языке.
и что такое действия.
ИМХО - полный бред.
я вижу тут 4 арифметических действия, и 2 присваивания.
к тому-же x+(x-y) == 2*x-y
может
Код: Выделить всё
z = x-y;
x-=z;
y+=z;
Так?
дык тут 3 действия и 3 присваивания...
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Самый простой алгоритм вывести число наоборот, т.е. из 12345 получить 54321 
Какие у кого будут предложения?!

Какие у кого будут предложения?!
-
- Сообщения: 482
Re: Задачки для разминки.
Можа, так ? 

Код: Выделить всё
#define SWAP_CHAR(a,b) { char temp = a; a = b; b = temp; }
void Reflex(char* pszReflex)
{
if (pszReflex) {
int iLen = strlen(pszReflex);
int iCount = iLen / 2;
for (int i = 0; i < iCount; i++) {
SWAP_CHAR(pszReflex[i], pszReflex[iLen - 1 - i]);
}
}
}
Пойдём на рыбалку !
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Не знаю, вы не проверяли?!
-
- Сообщения: 482
Re: Задачки для разминки.
Я думал, то была загадка, а это - отгадка... , не ?

Пойдём на рыбалку !
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Женя Подсыпальников писал(а): ↑17.12.2008 11:24
Я думал, то была загадка, а это - отгадка... , не ?
Не знаю, вы же писали код, вам и виднее правильно ли он работает или нет.
Вот мой вариант.
Код: Выделить всё
#include <stdio.h>
int main ()
{
int a,b;
printf("\nEnter a=\n");
scanf("%d",&a);
b=0;
if(a<0) a=-a;
while(a!=0)
{
b=a%10;
printf("%d",b);
a=a/10;
}
printf("\n");
return 0;
}
Вроде работает.
Код: Выделить всё
Enter a=
1234567890
0987654321
-
- Сообщения: 482
Re: Задачки для разминки.
О ! Зашибатый твой рецепт
, мне нравится !
(Напомнило о преобразовании числа в слова Русского языка
(123505 - сто двацать три тыщи пятьсот пять рублей),
тока там с другой стороны начиналось
)

(Напомнило о преобразовании числа в слова Русского языка
(123505 - сто двацать три тыщи пятьсот пять рублей),
тока там с другой стороны начиналось

Пойдём на рыбалку !
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Все наверное миллион раз слышали про факториал числа, особенно с использованием
рекурсии. Кто что предложит?!
рекурсии. Кто что предложит?!
-
- Сообщения: 482
Re: Задачки для разминки.
Код: Выделить всё
unsigned int factorial(unsigned int uiFactorial)
{
unsigned int uiResult = 1;
if (uiFactorial) {
uiResult = uiFactorial * factorial(uiFactorial - 1);
}
return uiResult;
}
А как лехко сложить все целые от 0 до 100 "устно" ?

Пойдём на рыбалку !
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Женя Подсыпальников писал(а): ↑17.12.2008 12:14Код: Выделить всё
unsigned int factorial(unsigned int uiFactorial) { unsigned int uiResult = 1; if (uiFactorial) { uiResult = uiFactorial * factorial(uiFactorial - 1); } return uiResult; }
А как лехко сложить все целые от 0 до 100 "устно" ?
По ходу работает.
Выкладываю свой вариант тогда уже без рекурсии.
Код: Выделить всё
#include <stdio.h>
int main(void)
{
long int i, n, summ;
printf("\n Enter n="); scanf("%d",&n);
summ=1;
if(n<0) n=-n;
for(i=1;i<n+1;i++)
summ=summ*i;
printf("\n Summa=%i",summ);
printf("\n");
return 0;
}
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Найти НОД т.е. наибольший общий делитель двух целых чисел.
-
- Сообщения: 151
- Статус: Useful
- ОС: win
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
а может кто-то знает как найти наименьший?! 

-
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: Задачки для разминки.
кодировщик писал(а): ↑17.12.2008 11:54Все наверное миллион раз слышали про факториал числа, особенно с использованием
рекурсии. Кто что предложит?!
http://www.willamette.edu/~fruehr/haskell/evolution.html
Алгоритм Евклида?
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux
Re: Задачки для разминки.
Portnov писал(а): ↑17.12.2008 20:53кодировщик писал(а): ↑17.12.2008 11:54Все наверное миллион раз слышали про факториал числа, особенно с использованием
рекурсии. Кто что предложит?!
http://www.willamette.edu/~fruehr/haskell/evolution.html
с факториалом разобрались, но хотел сказать что рекурсия не есть хорошо ИМХО.
Наименьший?!

А наибольший действительно алгоритм Евклида, совсем простой, что удивительно человек его нашел ещё за 300 лет
до н.э.
-
- Сообщения: 502
- ОС: gentoo -> archlinux
Re: Задачки для разминки.
например, как-то так:
Код: Выделить всё
...
for (int i = 2; i <= min; i++)
if (min % i == 0 && max % i == 0)
nod = i;
...
upd: блин. про евклида уже забыл.. надо было сначала гуглить )
морнинг круассан..
-
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: Задачки для разминки.
Ну там есть примеры и без рекурсии. И потом: 'Итерация свойственна человеку; Рекурсия же божественна' (с) Дейкстра, если не ошибаюсь.
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
-
- Сообщения: 502
- ОС: gentoo -> archlinux
Re: Задачки для разминки.
хм.. рекурсия - зло. но код, конечно, выглядит очень красиво )
морнинг круассан..
-
- Сообщения: 974
- Статус: зарёган в пятницу 13
- ОС: Linux