LINUX.ORG.RU

Сообщения ip1981

 

[haskell] покритикуйте программу

Только не спрашивайте, зачем она :-)

Задаётся натуральное число n. Если оно нечётное, то n = 3n+1, если оно чётное, то n = n/2. И так до тех пор, пока n ≠ 1.

Как результат интересны все промежуточные числа.

geblist :: [Integer] -> [Integer]
geblist (n:ns)
    | n == 1 = (n:ns)
    | otherwise = geblist (geb n : (n:ns))


geb :: Integer -> Integer
geb n
    | n == 1 = 1
    | odd n  = 3*n + 1
    | otherwise = n `div` 2

gebseq :: Integer -> [Integer]
gebseq n = reverse (geblist [n])

main = print (gebseq 27)

Вывод:

[27,82,41,124,62,31,94,47,142,71,214,107,322,161,484,242,121,364,182,91,274,137,412,206,103,310,155,466,233,700,350,175,526,263,790,395,1186,593,1780,890,445,1336,668,334,167,502,251,754,377,1132,566,283,850,425,1276,638,319,958,479,1438,719,2158,1079,3238,1619,4858,2429,7288,3644,1822,911,2734,1367,4102,2051,6154,3077,9232,4616,2308,1154,577,1732,866,433,1300,650,325,976,488,244,122,61,184,92,46,23,70,35,106,53,160,80,40,20,10,5,16,8,4,2,1]

 

ip1981
()

Очевидная идея для бэкапа

Заводим почту на Гугле и Яндексе (где ещё большие ящики и письма?).

Настраиваем на одном из них (у меня Гугл) фильтр на слово «backup» (к примеру) так, чтобы это письмо копировалось на другие ящики и «входящие» не захламляло.

Пишем себе письма. Как правило, файловые менеджеры могут отправлять выбранные файлы и директории по почте.

ip1981
()

[bash] Наконец-то вменяемая программа для изменения регистра

Р-р-рекомендованное название --- recase.

#!/bin/bash

set -e
set -u


ACTION='no'
FORCE='no'
UPPER='no'
SCRIPT=$(basename "$0")

usage ()
{
cat <<USAGE
Usage: $SCRIPT [options] files...

Renames files to lower or upper case.
Default is to rename to lower case.

Options are:
    -A        Do actual work ($ACTION)
    -F        Force renaming if files exist ($FORCE)
    -u        Rename to upper case instead of lower ($UPPER)

    -h, -?    This help message


Examples:

# $SCRIPT ee/*
mv "ee/RBwrwRW" "ee/rbwrwrw"
mv "ee/УМЦУУкцускцу" "ee/умцуукцускцу"

# $SCRIPT -u ee/*
mv "ee/RBwrwRW" "ee/RBWRWRW"
mv "ee/УМЦУУкцускцу" "ee/УМЦУУКЦУСКЦУ"

USAGE
    exit 0
}

if [ $# == 0 ]; then
    usage
fi

while getopts AFhu? opt; do
    case $opt in
        A) ACTION='yes';;
        F) FORCE='yes';;
        u) UPPER='yes';;
        *) usage;;
    esac
done
shift $(expr  $OPTIND - 1)

if [ "$UPPER" == 'no' ]; then
    sed_cmd='s/[[:upper:]]/\l&/g'
else
    sed_cmd='s/[[:lower:]]/\u&/g'
fi

for p in "$@"; do
    
    d=$(dirname  "$p")
    f=$(basename "$p")

    n=$(echo "$f" | sed "$sed_cmd")

    if [ "$ACTION" == 'yes' ]; then
        if [ -e "$d/$n" ] && [ "$FORCE" != 'yes' ]; then
            echo "File '$n' exists. Use -F to overwrite"
            continue
        else
            mv "$d/$f" "$d/$n"
        fi
    else
        echo "mv \"$d/$f\" \"$d/$n\""
    fi

done

exit 0

 

ip1981
()

Qt 4.6.0, QPixmap, scaledToWidth

Этот код вызывается несколько раз с разными «thumbname», файлы с такими именами 100% существуют

    QPixmap pixmap(thumbname);
    QIcon icon(pixmap.scaledToWidth(iconSize().width(), Qt::SmoothTransformation));
    QListWidgetItem *item = new QListWidgetItem(icon, filename);
    addItem(item);

Результат - результат правильный - несколько иконок с текстом в QListWidget.

Если же я удалю Qt::SmoothTransformation (по умолчанию станет Qt::FastTransformation),

Все иконки будут одинаковыми - как в первом файле, но при выборе иконка меняется, но опять у всех одинаковые.

WTF?

Это в Qt 4.6.0. В Qt 4.5.2 было нормально.

ip1981
()

Я же говорил, что в Париже ...

Я же говорил, что в Париже ... люди нетрадиционной ориентации

http://lenta.ru/news/2009/12/29/title/

ip1981
()

Если бы вы могли жечь взглядом,..

... вы бы жгли личный автотранспорт?

ip1981
()

Попробуем?

Transmission 1.80b3

magnet:?xt=urn:btih:188d323054871c36718e6b08570e622ca365608c&dn=%D0%91%D0%B8%D0%91%D0%B8%D0%A1%D0%B8%20---%20%D0%A2%D0%B5%D0%BB%D0%BE%20%D1%87%D0%B5%D0%BB%D0%BE%D0%B2%D0%B5%D0%BA%D0%B0

ip1981
()

Срочно в номер!

Задней стенкой системного блока, там где выглядывают разъёмы, например, видео карты, можно запросто отлохматить себе полпальца, вынимая плату, если она резко соскочит.

ip1981
()

mdadm и сменившийся файл SATA

В продолжении темы http://www.linux.org.ru/view-message.jsp?msgid=4372112&lastmod=1261860532048

Допустим, я создал RAID, указав какие устройства к него входят (напр., dev/sda1,/dev/sdc1); но после перезагрузки буквы дисков произвольно поменялись.

Как мне собирать RAID в таких случаях?

ip1981
()

Диски SATA меняются буквами

Имел два диска SATA, подключённые к каналам SATA1 и SATA2,
BIOS так и показывал, в системе они были соответственно sda и sdb.

После подключения третьего диска к каналу SATA3
этот третий диск стал sda, а два прежних - sdb и sdc.

BIOS же показывал правильно: два прежних SATA{1,2}, третий - SATA3

Хочу, чтобы SATA3 был таки sdc.

Нагуглил, что буквы могут меняться даже от загрузки к загрузке,
но у меня такого никогда не было.

Что делать?

Linux life 2.6.29.6-smp #1 SMP Mon Aug 17 00:18:05 CDT 2009 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 5000+ AuthenticAMD GNU/Linux

ip1981
()

Вы в опасности!!!

ip1981
()

the X series takes one year

ip1981
()

Эпично :-)

http://slackware.com/changelog/current.php?cpu=i386

l/cairo-1.8.8-i486-1.txz: Upgraded.
       Firefox 3.5.6 requires a new cairo to fix a bug on Windows. :-/
ip1981
()

RAID-1 на двух флэшках :-)

Втыкаем флэшки

# dmesg
scsi 19:0:0:0: Direct-Access     Sony     MSAC-UAM1        1.00 PQ: 0 ANSI: 0 CCS
sd 19:0:0:0: [sdc] 124416 512-byte hardware sectors: (63.7 MB/60.7 MiB)
...
scsi 20:0:0:0: Direct-Access     KINGMAX  USB Flash Disk   2.00 PQ: 0 ANSI: 2
sd 20:0:0:0: [sdd] 512000 512-byte hardware sectors: (262 MB/250 MiB)

Создаём RAID-1

# mdadm --create /dev/md0 --level 1 --raid-devices 2 /dev/sdc /dev/sdd
mdadm: largest drive (/dev/sdd) exceed size (62144K) by more than 1%
Continue creating array? y
mdadm: array /dev/md0 started.

Форматируем

# mke2fs /dev/md0
mke2fs 1.41.8 (11-July-2009)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
15552 inodes, 62144 blocks
3107 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=63700992
8 block groups
8192 blocks per group, 8192 fragments per group
1944 inodes per group
Superblock backups stored on blocks: 
	8193, 24577, 40961, 57345

Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Монтируем

# mount /dev/md0 /mnt/tmp/

Смотрим

# dmesg
md: bind
md: bind
md: md0: raid array is not clean -- starting background reconstruction
raid1: raid set md0 active with 2 out of 2 mirrors
md: resync of RAID array md0
md: minimum _guaranteed_  speed: 1000 KB/sec/disk.
md: using maximum available idle IO bandwidth (but not more than 200000 KB/sec) for resync.
md: using 128k window, over a total of 62144 blocks.
 md0:
md: md0: resync done.
RAID1 conf printout:
 --- wd:2 rd:2
 disk 0, wo:0, o:1, dev:sdc
 disk 1, wo:0, o:1, dev:sdd

Пишем, отключаем, останавливаем

# touch /mnt/tmp/test
# umount /mnt/tmp
# mdadm --stop /dev/md0

Приводим флешки в чувство

# mdadm --zero-superblock /dev/sdc
# mdadm --zero-superblock /dev/sdd

Обе флэшки содержат ext2 с файлом test и могут теперь использоваться по отдельности

ip1981
()

Ведь могут, если заставить!

ip1981
()

Гугл хакнули :-)

ip1981
()

Дзен

Существует ли целое число такое, что при возведение 2 в степень этого числа, получалось бы число, кратное 3?

Да, существует, его имя - "число такое, что при возведение 2 в степень этого числа, получается число кратное 3"

Это ничуть не хуже вопроса: существует ли число, квадрат которого равен -1?

Да, существует, его имя - "число, квадрат которого равен -1"

ip1981
()

Друзья! У меня есть прекрасные книги,..

которые я прочитал, и которыми я хотел бы поделиться с вами!

Надеюсь, после их прочтения мы сможем плодотворно побеседовать.


А. Фосс. «Сущность математики»

http://thepiratebay.org/torrent/5212506
http://slil.ru/28334559
http://ifolder.ru/15439779


С. Б. Кадомцев. «Геометрия Лобачевского и физика»

http://thepiratebay.org/torrent/5212512
http://slil.ru/28334588
http://ifolder.ru/15439813


Б. А. Вороноцов-Вельяминов. «Лаплас»

http://thepiratebay.org/torrent/5212521
http://slil.ru/28334612
http://ifolder.ru/15439974


Б. Рассел. «Введение в математическую философию»

http://thepiratebay.org/torrent/5212527
http://slil.ru/28334641
http://ifolder.ru/15440029


Г. Горелик. «Андрей Сахаров»

http://thepiratebay.org/torrent/5212534
http://slil.ru/28334693
http://ifolder.ru/15440219

ip1981
()

Книги по C++

Как же зае ничтожны авторы большинства книг по C++, которые друг у друга переписывают один и тот пример шаблонов для класс, реализующего стек.

+ ещё Педивикия, и куча «руководств» в Сети.

Несчастные ублюдки.

ip1981
()

Тендер :-)

http://lenta.ru/news/2009/12/07/interview/

Правительство Ивановской области заплатит 350 тысяч рублей за интервью с губернатором.

Губернатор так не популярен?

ip1981
()

RSS подписка на новые темы