29 agosto 2010
Gua78 - 10 Volte visto
Scheme:
(define ht
(lambda (d)
(lambda (k)
(if (= k 0)
(if (> d 0) 0 1)
(+ (* 2 ((ht d) (- k 1)))
((ht (remainder (+ d 3) 4)) (- k 1))
((ht (remainder (+ d 1) 4)) (- k 1)))
))))
(let ((f (ht 1))) (f 2))
Java:
public class tile {
public static int tiles (int d, int k){
if (k == 0)
if (d > 0)
return 0;
else
return 1;
else
return (2* (tile.tiles (d, (k-1)))) + (tiles (((d + 3) %4), (k -1))) + (tiles (((d + 1) % 4), (k - 1)));
}
}
26 agosto 2010
Gua78 - 18 Volte visto
Non ho ancora trovato una soluzione al problema dell’errore 6161 che appare negli eventi di sistema di Windows XP Sp3. Questo errore si è verificato apparentemente dal nulla e da quel momento la stampante USB Hp 1022 ha smesso di stampare. Aggiornare i driver oppure cambiare porta usb o utilizzare un print server per stampare non sono serviti a nulla.
Se qualcuno ha qualche idea può postarla nei commenti e lo ringrazierò vivamente. In rete purtroppo non c’è molto!!
Ecco in l’errore che compare negli eventi:
Impossibile stampare il documento Pagina di prova di proprietà di Administrator dalla stampante HP LaserJet 1022. Tipo Dati: RAW. Dimensione del file di spooling in byte: 259154. Numero di byte stampati: 0. Numero totale di pagine del documento: 1. Numero pagine stampate: 0. Computer client: \\PC3. Il processore di stampa ha restituito il seguente codice di errore Win32: 2 (0x2).
20 agosto 2010
Gua78 - 36 Volte visto
Questo post serve più a me che alla rete (ho poca memoria).
Vi serve formattare un hard disk esterno oppure un altro dispositivo di grosse dimensioni in fat32?
Beh nessun problema, leggete il post dal Blog ilgerone.net e risolvete il problema in 20 secondi …
16 agosto 2010
Gua78 - 47 Volte visto
Questo script prevede l’installazione di blat.
@echo.
@echo.
@echo Versione 1.1 del 30/04/2010 Guion Matteo
@echo Procedura di Salvataggio del Server
@echo -------------------------------------------
rsm refresh /lf"Hewlett Packard DAT72 drive"
sleep 30
C:\WINDOWS\system32\ntbackup.exe backup "@C:\Documents and Settings\pinco_pallino\Impostazioni locali\Dati applicazioni\Microsoft\Windows NT\NTBackup\data\backup_notturno.bks" /j "Backup" /v:yes /r:no /l:s /m normal /rs:no /hc:on /p "4mm DDS" /UM
@echo off
:::::::::::::: Inizializzazione variabili ::::::::::::::::
set email=email@email.it
set server=-serverSMTP 192.xxx.xxx.xxx
set subject1=-s "BACKUP Server 2003"
set subject2=-s "Sono accorsi alcuni errori sul server 2003"
set tof=-to %email% -f %email%
set attach=-attach "C:\Documents and Settings\pinco_pallino\Impostazioni locali\Dati applicazioni\Microsoft\Windows NT\NTBackup\data\*.log"
set msg1=-body "Vedere allegato per dettagli backup"
set msg2=-body "ATTENZIONE ##### Non e' stato torvato il file di log . Il backup potrebbe essere fallito!!!!!"
::::::::::::::::: Esecuzione di Blat! :::::::::::::::::::
IF EXIST "C:\Documents and Settings\pinco_pallino\Impostazioni locali\Dati applicazioni\Microsoft\Windows NT\NTBackup\data\*.log" (blat %msg1% %tof% %subject1% %server% %attach%) ELSE (blat %msg2% %tof% %subject2% %server% %attach% )
:::::::::: Copia files di log in un unico file :::::::::::
set mese=%DATE:~3,2%
set giorno=%DATE:~0,2%
set anno=%DATE:~-4%
echo %giorno%
echo %mese%
echo %anno%
copy "C:\Documents and Settings\pinco_pallino\Impostazioni locali\Dati applicazioni\Microsoft\Windows NT\NTBackup\data\*.log" "E:\backup\log\backup.log"
::::::::::::::::: Cancellazione file di Log ::::::::::::::
IF EXIST "E:\backup\log\backup.log" (del "C:\Documents and Settings\pinco_pallino\Impostazioni locali\Dati applicazioni\Microsoft\Windows NT\NTBackup\data\*.log")
ren "E:\backup\log\backup.log" backup_%giorno%_%mese%_%anno%.log
22 marzo 2008
Gua78 - 282 Volte visto
Dovete estendere la vostra rete con il piano superiore del vostro ufficio tramite wi-fi per poi ricreare una lan, senza però bucare muri e stendere cavi?
La soluzione migliore è utilizzare 2 access point da collegare point to point bridge con blocco degli accessi su mac address.
Per questa soluzione ho acquistato 2 access point Netgear WG602 ad un prezzo veramente modico (48 Euro) con queste caratteristiche principali:
Funzionalità:
- Smart Wizard per facilitare l’installazione
- Supporta le modalità bridging e repeater
- Firmware aggiornabile via web browser
- Compatibile con i dispositivi IEEE 802.11b esistenti
- Abilitazione/disabilitazione della diffusione del SSID
Antenna:
- Antenna singola staccabile 2 dBi
- Potenza di trasmissione: 16 dBm
Sicurezza:
- Crittografia Wired Equivalent Privacy (WEP) a 40 bit
(detta anche a 64-bit) e 128 bit
- WPA PSK **
- Filtraggio degli indirizzi MAC
Passiamo quindi alla configurazione:

Entriamo nel pannello di controllo dell’access point collegandoci all’indirizzo web 192.168.0.227 (ricordiamo di dare un indirizzo IP al computer che sia relativo a questa sottorete); le credenziali di accesso di default sono admin e password (mi raccomando di cambiarle immediatamente).
Modifichiamo gli IP dei 2 access point con quelli corretti per la vostra sottorete o del vostro Router, mettiamo 2 ip diversi e inseriamo come gateway l’ip del vostro router. Modifichiamo il Sid del vostro access point nella sezione Wireless setting.

Settiamo la Region (Europe) e disabilitiamo l’invio del SID (la sicurezza non è mai troppa).
Per modificare le impostazioni scegliamo dal menù Wireless Bridiging (come da foto) –> scegliamo wireless point to point e inseriamo il mac address dell’altro access point (troviamo il serial sotto l’access point);

Nel menù security selezioniamo data encruption WPA e inseriamo una chiave di cifratura. Come ultima cosa blocchiamo nella access list control il mac address dell’altro access point e limitiamo quindi l’accesso a solo quell’apparecchio.
Ora i vostri 2 apparecchi dovrebbero dialogare e non essere visibili in rete a meno di non conoscere i loro IP. Ho notato che per alcuni settaggi bisogna riavviare l’apparecchio, oppure staccate la corrente e riaccendete tutti gli apparati per fare un controllo di “tenuta”.
8 agosto 2010
Gua78 - 22 Volte visto
Definisci in Scheme un programma su una procedura ricorsiva di coda, più eventuali procedure non ricorsive, per trovare minimo e massimo da una lista.
(define mix
(lambda (m n)
(if (< m n)
m
n)
))
(define man
(lambda (m n)
(if (> m n)
m
n)
))
(define f
(lambda (txt)
(f-tr txt (car txt) (car txt))
))
(define f-tr
(lambda (t m n)
(if (null? (cdr t)) (list m n)
(f-tr (cdr t) (mix m (mix (car t) (cadr t))) (man n (man (car t) (cadr t))))
)))
(f '(2 3 4 1 5 4 3 7 9 10))
Altra soluzione assai più esigua che utilizza molto l’ingegno
(define min-max
(lambda (nums)
(min-max-tr (car nums) (car nums) (cdr nums))
))
(define min-max-tr
(lambda (min max nums)
(if (null? nums)
(list min max)
(min-max-tr
(if (< (car nums) min) (car nums) min)
(if (> (car nums) max) (car nums) max)
(cdr nums))
)))
7 agosto 2010
Gua78 - 24 Volte visto
Definiamo in Scheme una procedura a valori procedurali cycle-funzione che data una lista restituisce una funzione periodica e restituisce il valore alla posizione indicata della lista:
(define cycle-fun
(lambda (n)
(lambda (count)
(if (= count 0)
(car n)
(if (> count 7) ((cycle-fun n)
(- count 8))
(list-ref n count)
)
)
)))
(define f (cycle-fun '(0 -1 -2 -1 0 1 2 1)))
;esempi di lancio della procedura
; f di 2 -> -2
; f di 11 -> -1
(f 2)
(f 11)
Soluzione “matematica” alternativa più complessa (secondo il mio punto di vista)
(define cycle-fun
(lambda (p)
(lambda (x) ; x >= 0
(list-ref p (remainder x (length p)))
)))
25 luglio 2010
Gua78 - 27 Volte visto
(define shared
(lambda (g h)
(shared_com g h null )
))
(define shared_com
(lambda (u v t)
(cond ((=(length u) 0) t)
((=(length v) 0) t)
((= (car u) (car v)) (append t (list(car u)) (shared_com (cdr u) (cdr v) t)))
((> (car u) (car v)) (shared_com u (cdr v) t))
((< (car u) (car v)) (shared_com (cdr u) v t))
)
))
(shared '(1 3 5 6 7 8 9 10) '(0 1 2 3 4 5 7 9))
Soluzione proposta a lezione
(define shared
(lambda (u v)
(cond ((or (null? u) (null? v)) null)
((< (car u) (car v)) (shared (cdr u) v))
((> (car u) (car v)) (shared u (cdr v)))
(else (cons (car u) (shared (cdr u) (cdr v))))
)))
</pre>
20 luglio 2010
Gua78 - 47 Volte visto
Il comando da utilizzare per aggiornare l’ora usando il terminale di Linux è:
date -s 1705
che equivale a dire di aggiornare l’ora alle 17:05 senza toccare la giornata!
Bella lì
18 luglio 2010
Gua78 - 21 Volte visto
(define tab-fun ; valore: procedura
(lambda (args vals) ; args, vals: liste di uguale lunghezza
(lambda (n)
(if (= n (car args))
(car vals)
((tab-fun (cdr args) (cdr vals)) n)
))
))
(define f (tab-fun '(0 1 2 3 4 5) '(2 3 5 7 11 13)))
(f 2)