Svenska
nyaste
Atrás

Övrigt

Här inne pratar vi om musik, filmer, kläder och konstiga sjukdomar.

Den nya programmeringstråden


Citerar Zaito:
Om du behöver fråga det, så antar jag att boten inte har något direkt syfte utan bara är ett roligt projekt.

Well, kinda. Bottens syfte är att vara hjälpsam.

Citerar Zaito:
Annars så kan du lära dig något nytt protokoll/API och kombinera detta med IRC-boten. Tillexempel en bot som, när man frågar den om något, plockar det första svaret ifrån Wolfram Alpha med hjälp av deras API. Eller samma sak, fast med Google (verkar vara en klassiker). Kanske en bot som laddar upp filmer på Youtube åt en? Eller en bot som skriver inlägg på Gamereactor?

Hmm, det e ju roligt stuff men inte särskilt hjälpsamt.

Det som finns nu e typ:
- Addar länkar till databas med taggar, sorterar också på om det är en spotify eller vanlig länk.
- !Bored <tag> hämtar random länk ifrån databasen med eller utan tag
- !Dice slår en virtuell tärning som returnerar 1-6
- !Coin flippar ett virtuellt coin och returnerar om det blir heads/tails
- !Linkinfo <linkid>/<link> returnerer info om en länk tex dess id, namn och vilka taggar som är kopplad till den
- !dellink </linkid>/<link> tar bort en länk från databasen
- !Spotify <tag> hämtar en random Spotifylåt från databasen.

Sen håller vi på med en RSS läsare just nu som ska kunna följa feeds och sen skicka PM till folk när nya saker postas i def feedsen.

Tillagt 2013-05-12 12:43:
Btw, borde man inte kunna göra en RSS-tjänst som kan läsa av Gamereactors forum och skapar en feed för varje tråd?

asso, man går in på "gamereactorRSSProjekt.com" sen i fältet postar man länk till den tråd man vill följa och får då ut en RSS-feed som skapas på sidan baserat på om folk postar i tråden.

It could work...

Tillagt 2013-05-12 12:45:
Det är ju relativt enkelt att hitta i sourcekoden hur många sidor det finns och varje post har ju också ett unikt id... I think it could be done, om ja kunde mer regex. (mer än null that is)
Innan du frågar om nån vet en bra dator, specificera budget, vad du ska ha den till, om det ska vara laptop eller stationärt. Sen kommer någom i Officiella Datortråden att länka ett bra paket.
  • 0
har lite problem med att komma på hur jag ska göra iteratorerna och skulle gärna ha lite hjälp med hur man skulle kunna göra dom.
"My hat is my friend, it helps me relax"
  • 0
Någon som kan Python? Några grundläggande frågor.
  • 0
Har ett problem med for satsen. Användaren skriver in en rad med värden och sedan ska programmet ta det största värdet minus det minsta.

Har någon ett tips på en tutorial som förklarar lite närmare hur for satsen används?
Take it or leave it!
  • 0
Citerar Snorken:
Har ett problem med for satsen. Användaren skriver in en rad med värden och sedan ska programmet ta det största värdet minus det minsta.

Har någon ett tips på en tutorial som förklarar lite närmare hur for satsen används?


Har ingen tutorial, men svarar gärna på frågor. For-loopar används oftast till att iterera ett x antal gånger över ett visst block kod. Skillnaden mot while-loopar är att det inbakat i notationen för for-loopar finns möjlighet att hantera iterationsvariabeln.

Säg att du vill iterera fem gånger. För en while loop så hade du behövt skriva något liknande detta:

int i = 0;
while(i < 5)
{
i++;
// Kod
}

Medan det för en for-loop räcker med:

for(int i = 0; i < 5; i++)
{
// Kod
}

Notera att variabeln endast är definierad i scopen för for-loopen. Detta kan både vara en fördel och en nackdel. Därför går det även bra att göra:

int i;
for( i = 0; i < 5; i++)
{
// Kod
}

Exemplet du gav så byter du helt enkelt ut '5' mot det antal värden som användaren matat in.

Tillagt:

Använde c++ för exemplen. Notationen kan skilja sig en del mot andra språk.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
Edit: Löste uppgiften.
Take it or leave it!
  • 0
  • kraz
  • kraz
Jag har lite problem att förstå mig på for-satsen jag också :/ jag programmerar i Java just nu och tycker det mesta i kursen har varit väldigt logiskt och lätt att förstå. Men just for-satsen sätter sig inte. Jag har lärt mig att skriva den men förstår inte egentligen vad det är jag skriver. Detta är uppgiften jag har fått:

Gör ett program där användaren får mata in ett antal positiva heltal. Inmatningen avslutas med ett negativt tal. Programmet ska sedan skriva ut det största talet, det minsta talet och slutligen alla inmatade tal.

Och det här är det jag kodat hittils (har endast tagit fram max-värdet, och har fastnat lite nu):

package exempel_diagnos1;
import java.util.Scanner;

public class Exempel_Diagnos1 {

public static void main(String[] args) {
Scanner scan = new Scanner(System.in);

System.out.print("Ange värden: ");
int antal = scan.nextInt();
int[] heltal = new int [antal];

for ( int n = 0 ; n < antal ; n++){
System.out.print("Ange positivt heltal "+n+": ");
heltal[n] = scan.nextInt();
}

int max = heltal[0];
for ( int n = 0 ; n < antal ; n++ ){
if ( max < heltal[n]) max = heltal[n];
}
System.out.println();
System.out.println("Största värdet är: "+max);
}
}

Jag förstår den första for-satsen, som anger hur många tal man kan mata in. Men delen där jag ska ta fram det största värdet förstår jag inte alls. Är det någon som är bra på att förklara sånt här? :/ jag är tacksam för all hjälp! Jag läser kursen på distans så jag får inte svar av min lärare särskilt snabbt. Sen vet jag inte riktigt vad han menar med att inmatningen ska avslutas med ett negativt tal och hur jag ska koda den biten.
triangles are my favourite shape, three points where two lines meet. toe to toe, back to back, let's go, my love it's very late. till' morning comes, mmm, let's tessellate.
  • 0
Citerar kraz:
Men delen där jag ska ta fram det största värdet förstår jag inte alls.


Antar att den ger dig lite konstiga värden? Som att mata ut: "Största värdet är: " för varje nummer och inte bara när den hittar ett nytt största värde.
Verkar inte vara for-loopen det är fel på utan if-satsen i den.

if ( max < heltal[n]) max = heltal[n];
{
System.out.println();
System.out.println("Största värdet är: "+max);
}

Leder ju till att if-satsen endast handlar om ifall "max = heltal[n];" ska köras eller ej. Utskrivarbiten har inget att göra med if-satsen. Flyttar man däremot in tilldelningen inom {} så kommer det fungera som det ska (eller åtminstone som jag uppfattat att det borde fungera).

if ( max < heltal[n])
{
max = heltal[n];
System.out.println();
System.out.println("Största värdet är: "+max);
}

Citerar kraz:
Sen vet jag inte riktigt vad han menar med att inmatningen ska avslutas med ett negativt tal och hur jag ska koda den biten.


Vet inte om det är det snyggaste sättet, men går alltid att bara ha en if-sats som kollar ifall det är ett negativt nummer och ifall det är det köra "break" för att komma ut ur loopen. Samt att sätta variabeln som var negativ till noll.

Var länge sedan jag programmerade i Java, men om jag minns rätt så kommer de platser i arrayen som inte blivit tilldelade bara vara "0". I sådana fall borde det fungera problemfritt. Personligen hade jag inte vågat göra så med C++-kod dock.

for ( int n = 0 ; n < antal ; n++){
System.out.print("Ange positivt heltal "+n+": ");
heltal[n] = scan.nextInt();
if( heltal[n] < 0 )
{
heltal[n] = 0;
break;
}
}

Ett annat sätt är att baka in villkoret i for-loopen. Skulle krävas lite ommöblering dock.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
  • kraz
  • kraz
Citerar Silky:
Vet inte om det är det snyggaste sättet, men går alltid att bara ha en if-sats som kollar ifall det är ett negativt nummer och ifall det är det köra "break" för att komma ut ur loopen. Samt att sätta variabeln som var negativ till noll.


Ah justdet! Det är klart man kan göra så (: jag vet inte varför jag inte tänkte på det. Tack så mycket för hjälpen! Ska sitta och nöta detta nu och försöka få in det.
triangles are my favourite shape, three points where two lines meet. toe to toe, back to back, let's go, my love it's very late. till' morning comes, mmm, let's tessellate.
  • 0
Citerar kraz:
Ah justdet! Det är klart man kan göra så (: jag vet inte varför jag inte tänkte på det. Tack så mycket för hjälpen! Ska sitta och nöta detta nu och försöka få in det.


Glad att kunna hjälpa. Bara fråga på ifall du har fler frågor. Lycka till.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
  • kraz
  • kraz
Citerar Silky:
Glad att kunna hjälpa. Bara fråga på ifall du har fler frågor. Lycka till.


Det känns dock som att det plockar bort poängen med att ange antalet värden man vill mata in ifall man har ett break för ett negativt tal... måste man välja antal eller kan man köra programmet utan det? Om man ändå avbryter med ett negativt tal så.
triangles are my favourite shape, three points where two lines meet. toe to toe, back to back, let's go, my love it's very late. till' morning comes, mmm, let's tessellate.
  • 0
Citerar kraz:
Det känns dock som att det plockar bort poängen med att ange antalet värden man vill mata in ifall man har ett break för ett negativt tal... måste man välja antal eller kan man köra programmet utan det? Om man ändå avbryter med ett negativt tal så.


Det kan jag hålla med om. Det enda "antal" gör är ju att definiera storleken på "heltal[]", men man hade ju lika gärna kunna sätta den till en fast storlek. Ett alternativ hade varit att använda en dynamisk datastruktur.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
EDIT:
Whatever, läste fel.
Här skare stå något helt enormt fyndigt.
  • 0
  • kraz
  • kraz
Kom på att han kanske menade att man skulle använda while i stället, då slipper man ju ha med antal då du ändå är onödigt. Så while heltal är positivt.
triangles are my favourite shape, three points where two lines meet. toe to toe, back to back, let's go, my love it's very late. till' morning comes, mmm, let's tessellate.
  • 0
Citerar kraz:
Kom på att han kanske menade att man skulle använda while i stället, då slipper man ju ha med antal då du ändå är onödigt. Så while heltal är positivt.


Det fungerar.

Vet inte på vilken nivå övningen ligger på. Vet själv att när jag började programmera så var uppgifterna väldigt specifika i sina lösningar. Som tur har man ju passerat det och så man kan ha roligt och lösa problemet själv.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
  • kraz
  • kraz
Citerar Silky:
Vet inte på vilken nivå övningen ligger på. Vet själv att när jag började programmera så var uppgifterna väldigt specifika i sina lösningar. Som tur har man ju passerat det och så man kan ha roligt och lösa problemet själv.


Jag har precis börjat den här kursen så det är väl svårt att säga, det är nog fortfarande rätt specifikt hur man ska lösa dem tyvärr. Ska börja med grafik nästa det blir spännande!
triangles are my favourite shape, three points where two lines meet. toe to toe, back to back, let's go, my love it's very late. till' morning comes, mmm, let's tessellate.
  • 0
Citerar kraz:
Jag har precis börjat den här kursen så det är väl svårt att säga, det är nog fortfarande rätt specifikt hur man ska lösa dem tyvärr. Ska börja med grafik nästa det blir spännande!


Trevligt.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
Har en fråga angående string i C++. Om jag matar in en serie heltal liknande 012345-789 i en string och sedan vill plocka ut de heltal som finns på exempelvis plats nr 3 samt plats nr 4. Hur gör jag då?

Edit löste det genom att ta char value = string[3].
Take it or leave it!
  • 0
Citerar Snorken:
Edit löste det genom att ta char value = string[3].


Tänkte precis föreslå att använda en array.
Glory to Arstotzka!
  • 0
Behöver hjälp att komma igång med programmeringen över huvudtaget då skolboken jag sitter med är ganska värdelös på den biten. Hur gör jag för att få en kompilerad byteskod? (vad nu det är), en sån där class-fil så jag kan köra java-filerna? Jag har senaste verisonen av java, behöver jag ladda ner någon sdk/jdk separat? Använder Windows 7, så vilken ska jag i så fall ladda ner?
  • 0
Citerar Perserkatten:
Behöver hjälp att komma igång med programmeringen över huvudtaget då skolboken jag sitter med är ganska värdelös på den biten. Hur gör jag för att få en kompilerad byteskod? (vad nu det är), en sån där class-fil så jag kan köra java-filerna? Jag har senaste verisonen av java, behöver jag ladda ner någon sdk/jdk separat? Använder Windows 7, så vilken ska jag i så fall ladda ner?


Vad du behöver är JDK för att kompilera koden och JRE för att köra den. Förmodligen har du dock redan JRE på datorn.

Oracle JDK download

Där kan du ladda ner antingen endast JDKn eller JDKn tillsammans med NetBeans. NetBeans är en så kallad IDE, vilket är programmet i vilket man skriver koden. Där finns även andra verktyg som hjälper till med programmeringen i sig och med debugging. Personligen föredrar jag dock en annan IDE, Eclipse, men det är en smaksak.

När jag började koda Java så använde jag dock ingen IDE alls. Istället skrev jag bara koden i notepad (eller notepad++) och körde kompilatorn direkt genom Kommandoprompten. Detta förenklas genom att man lägger till JDK-mappen i Windows Path-variabel. Detta är en mycket mer lättviktig lösning. Som nybörjare kan det dock vara en idé att använda sig av en IDE som hjälper en att strukturera koden och använda olika klasser/funktioner.

Lite andra nyttiga resurser:

Javas API-dokumentation - Väldigt nyttig för att hitta en klass du behöver eller för förstå vad en viss funktion gör.
Java tutorials - Titta under "Trails covering the basics"

Sedan är det bara att fråga ifall du stöter på några problem. Det var ett tag sedan jag programmerade Java, men det grundläggande kan jag ännu.
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • 0
Tack för svar! Jag laddade ner JDK från java.com. Men jag får ingen binmapp? Får bara en fil som heter "jdk-7u51-windows-i586.exe". När jag försöker kompilera filerna, t.ex javac HelloWorldApp.java så står det bara i kommandoprompten: "javac är inte ett internt kommando, externt kommando, program eller kommandofil."

EDIT: Fungerar nu, var tvungen att leta fram bin-mappen för hand, den kom inte när jag sökte på den...
  • 0

För att kommentera måste du vara inloggad. Om du inte är medlem än - bli medlem nu!