News:

No significant change

Main Menu

Måste man köpa för 2k+

Started by look2, March 17, 2004, 23:05:52

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Obizzz

sen kan man ju även göra lite logisk programmering t ex att om knapp två på gasreglaget är nedtryckt i mer än 2 sek så gör knapp a på spaken det annars gör den något annat osv...
"It's not easy because it's difficult" - François Duval, Rallye de France 2004
--------------------
Martin Ãâ€"berg
www.martinoberg.se

mar.oberg på googles emailtjänst

F16_Filur

Kejj... fick slå upp begreppet logisk programmering. Har lite svårt att sådär omdelbart koppla förklaringarna till Cougarn men... det är säkert ett passande namn.

QuoteEtt annat spår inom programmering är logisk programmering. Här ligger tyngdpunkten på att samla fakta och regler. Genom deduktion eller induktion kan sedan olika resultat automatiskt härledas. Logisk programmering är nära besläktad med Artificiell intelligens (AI). Det mest kända programspråket för logisk programmering är Prolog.

QuoteDet  klassiska imperativa sättet att programmera bygger på von Neumanns modell, där imatning av data "mappas" till utmatning av data genom funktioner och procedurer. Det logiska tankesättet är en högre abstraktionsform av programmering och har ingen koppling till vare sig datorarkitektur eller datortyp, utan är en deklarativ stil av programmering. Med detta menas att programmeraren talar om vad för problem som skall lösas, snarare än hur man löser ett. I logisk programmering definieras egenskaper och relationer för de intressanta objekten, och systemet avgör hur den ska använda objekten för att lösa problem. På detta sätt är det programmerarerns uppgift att skapa de kända förhållanden som existerar i domänen för ett problem, och systemet löser ut det okända egenskaperna, förhoppningsvis lösningen/lösningar till ett givet problem. Detta kan jämföras med ett kalkylprogram där systemet "fyller i" de tomma cellerna beroende på de omgivande relationerna och formlerna.

Ett program i en logisk tolkning är uppbyggt av axiom och exekveringen av programmet ger bevis utifrån det mål som deklarerats i programmet.


Man kan men andra ord se ett logiskt program som en databas uppbyggt av relationer och med hjälp av dessa utvinna svar som inte var uppenbara vid skapadet av relationerna.


Ex. En utredning av ett brott.
En databas av kända uppgifter om tider, platser samt misstänkta personer och relationer mellan dessa skapas, ur dessa fakta skapas sedan tänkbara lösningar som kan binda vissa/en av personerna till brottsplats, tid osv.

:)

Obizzz

med hjälp av logiska begrepp alltså.. om A = värdeA så blir B = Mosbricka annars B = Hamburgertallrik
"It's not easy because it's difficult" - François Duval, Rallye de France 2004
--------------------
Martin Ãâ€"berg
www.martinoberg.se

mar.oberg på googles emailtjänst

SledgeHammer

Men Obizzz, förklara så att man förstår =)

Om endast knapp A så gör något
Om endast knapp B så gör något annat
Om knapp A OCH knapp B så gör en tredje sak

Sedan kan man blanda in mer intressanta saker, tex variabler man kan sätta och kontrollera sanningshalten på mm.

Om knapp ( C ELLER knapp D ) OCH variable1 så gör en fjärde sak

Tänk inte så mycket på programmering som i programmera nåt språk. Med logisk programmering i Cougarfallet menas helt enkelt användandet av booleska uttryck.
Mvh  - Stefan -


Obizzz

har vi inte redan gått igenom det här med Obizzz och programmering? :D
"It's not easy because it's difficult" - François Duval, Rallye de France 2004
--------------------
Martin Ãâ€"berg
www.martinoberg.se

mar.oberg på googles emailtjänst

F16_Filur

Tack, som jag fattade var ändå Obizz förklaring att A = inputen och B = resultatet

A = enkel tryckning ger B = mosbricka

A = 2 sek ger B =  livstids fängelse

Din förklaring Stefan, låter väldigt likt det en shift-knapp gör men att det blir möjligt för alla knappar på Cougarn att agera shift. Sen det med variabler påminner en hel del om det som finns i Flanker/LO - beroende på vilket flightmode man befinner sig i gör knapparna olika saker. Ok, där är då antalet variabler begränsat till 6 tror jag, medan Cougarn har oändligt (nästan).

Egentligen räcker Flanker/LO - programmeringen väldigt långt med tanke på att - shift, win, ctrl och alt - tangenterna alla kan agera "shift" plus att man har 6 variabler. Too bad man inte kan spara den till file längre:D. Då skulle man varit lycklig, och vem skulle orka med det.... ;)

SledgeHammer

Sluta tänk i termen shiftknapp, genast! =)

Jag skrev OCH och ELLER just så av en anledning. Leta lite på nätet efter boolesk algebra och läs lite så kanske det klarnar. Man kan göra så otroligt mycket mer än shiftknappsbeteenden. Att man sedan kan blanda det med variabler, timers mm gör ju inte saken sämre.

Äh. Här är några länkar. Kanske inte världsbäst men...

http://susning.nu/Boolesk_algebra
http://sv.wikipedia.org/wiki/Boolesk_algebra
http://gluefox.com/min/trov/bool.htm
http://www.elektroteknik.net/digitalteknik/kurs/illustration.html
Mvh  - Stefan -


F16_Filur

Men ge ett exempel då på vad man kan göra med boolesk algebra på Cougarn om vi bortser från variabler och timers. Och som överskrider möjligheterna för olika shiftknappar.

Tack för länkarna. Ska försöka förstå det sättet att tänka.