Gå til innhold

Dwagon

Medlemmer
  • Innlegg

    981
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av Dwagon

  1. Generelt sett "trenger" jeg ikke ett nytt kort når jeg har ett HD 7950 slik jeg har per i dag.

     

    Og da synes jeg at ett kort til 6500 blir for dyrt. Selv om det er ett 680Ti, men jeg skal tygge på det resten av dagen å se det ann.

     

    Grunnet til at jeg synes det er dyrt er fordi jeg er en ekstremt fattig nerd, som har spart og spart for å få råd til det jeg vil ha :)

     

     

    Om jeg bruker alle pengene mine kan jeg kjøpe ett 680Ti, men da er jeg også blakk til neste gang jeg får penger. Og så viktig er det ikke for meg.

     

    Jeg må uansett ut senere med ca 1.5k for nvidia 3d vision briller.

     

    Håper at man kan finne en god løsning straks :)

  2. Neida, ikke gi opp enda. Det er nok noen som klarer å finne et billigere Ti kort, eller muligens 2 GTX 970 som du kan sette i SLI, som faktisk er sirkus like bra som et 980Ti kort og en god del bedre enn et enkelt 980.

     

    Fant 970 til 2.800,- ca, det slår 980 og er bare et par hundringser dyrere.

     

    Edit; Ta å bump denne innimellom eller sjekk BlackFriday-tråden. Det er kanskje bedre å slenge inn en forespørsel rett på BF-tråden :)

     

     

    Hehe, godt poeng.

     

    Har spesifikt utelukket 970 pga minnekontroller idiotien på den

    Skal ta en titt i den tråden takk for tipset.

  3. Å kjøpe GTX 980 i dag er nesten som å kjøpe katta i sekken pga GTX 980Ti. 980Ti har såppas mye bedre ytelse og koster så lite ekstra at det er meningsløst å kjøpe nytt 980. Eneste grunn for å gå for 980 jeg kan tenke meg er hvis man skal oppgradere til SLI eller finner et billig på bruktmarkedet.

     

    Ja, jeg ser den.

     

    Problemet er at det er 2000 kroner dyrere for et Ti kort, og det er mer enn jeg hadde lagt til siden.

     

    Om komplett hadde vært kompis hadde de valgt ett annet enn 6gb versjonen å promotere på denne dagen, men akk nei :)

     

    Da velger jeg å ikke oppgradere dette år heller, og heller se det ann mot neste års tilbuder.

     

    Tusen takk for svaret.

  4. Hei,
     
    Min pc er som følger
     
    CPU: I7 3770 (uklokket)
    Ram: 24gb 1600mhz ram
    SSD'er overalt
     
    Gammel GPU: Amd HD 7950
     
     
    Er det verdt det å kjøpe ett GTX 980 4gb's kort i dag på svartfredag, 
     
    Funnet en nettside som selger til 4.5k https://www.dustinhome.no/product/5010887017/armor-2x

     

     

    Er dette et "bra" kjøp med tanke på min maskin

     

    Eneste grunn til at jeg vil ha nVidia's kort er for at min skjerm har 3D-Vision muligheter og jeg vil leke med det! :)

  5.  

    Her har du en enkel løsning:

    List<PictureBox> randomRunes = yourRunes.OrderBy(i=>rnd.Next()).Take(8).ToList();

    class SimpleRandomSelection
    {
      static void Main()
      {
        List<int> yourRunes = new List<int>();         //your list of runes
        for (int i=0; i<24; i++) { yourRunes.Add(i); } //fill the list with something
        Random rnd = new Random();                     //instantiate your random source
    
        /// This is where the magic happens, a onliner that solves your problem:
        List<int> randomRunes = yourRunes.OrderBy(i=>rnd.Next()).Take(8).ToList();
    
        //print to console to show selection
        randomRunes.ForEach(i=>Console.WriteLine(i));
      }
    }
    

    Epic, man lærer alltid noe nyttig.

     

    takket være deg er nå verktøyet straks klart!

     

    Var litt fomling da jeg møtte på en uvented kræsj.Men det viste seg å være feil i runelesningen fra fil samt en +1 error i en loop.

     

    Men nå fungerer det som bare faen!

     

    Alt som gjennstår nå er å legge til inputlogikk og begrensninger ihht bruk.

     

    Tusen takk for all hjelpen.

     

    Ja, kanskje greit å se på resultatet.

     

    http://www.kraksletta.com/fotn/Runegenerator.html

    • Liker 1
  6. Popcorn Time er jo piratmateriale. Og den er designet slik at den laster opp mens du ser.

     

    Så dersom de overvåker trafikken på nettverket så kan de reagere, kan også være at porten til programmet er stengt.

     

    Da kan du i allefall redigere konfigurasjonsfilen, dette ligger i appdata mappen.

    src/app/lib/streamer.js
    linje 4  : var STREAM_PORT = 21584; 
    endre til: var STREAM_PORT = 80;
    

    For å gå på "http" porten, eller nettleserporten om du vill.

     

    Veldig mange bedrifter og slikt stenger ned porter de spesifikt ikke trenger.

     

    Norsk lov kan i teorien bite deg i skinken i aller værste tilfelle.

  7. 		private int[] GenerateRunes(int numRunes)
    			{
    			ArrayList possibleRunes = new ArrayList();
    			Queue q = new Queue(Enumerable.Range(0, 23).ToArray());
    			
    			possibleRunes.AddRange(q);
    
    			ArrayList numGen = new ArrayList();
    			
    			int index = 0;
    			for ( int i = 0; i < numRunes; i++ )
    				{
    					index = rnd.Next(0, 23 - i);
    					numGen.Add(i);
    					possibleRunes.RemoveAt(i);
    				}
    			int[] runelist =  numGen.ToArray(typeof(int)) as int[];
    			return runelist;
    

    Sånn ser den ut nå. fungerer fint, men får feil når jeg passerer 12 runer. I motsetning til 18 fra den gamle metoden.

     

    :hmm:

     

    Skjønner ikke helt hensikten med indexen.

  8. I for loopen din skriver du

    for (i=0; i<n; ++i) {
        index = rnd.Next(0, 23-i);
        chosenRunes.push(i);
        possibleRunes.delete_element(i);
    }
    

    Kan det være at du mente at index skal være det tallet jeg henter og sletter på?

    I så fall må jeg endre fra array til list, ellers blir det uhm.... merkelig.

     

    Jeg prøver litt kode og ser hvordan det går.

     

    Setter pris på all hjelp, selv om du kanskje ikke kan C# :)

  9. Akkurat, ja kan ikke skryte på meg at dette er noe jeg kan. Det er åpenbart.

    Copy pasten inn fra visual studio er skitten.

    Jeg kan rett og slett ikke nok om syntaxen til å løse det på en ren måte (enda!)

    Så mens du skrev posten din fiklet jeg med kode og kom fram til dette.

    private int[] GenerateRunes(int numRunes)
    	{
    	
    	int[] numGen = new int[numRunes];
    
    		for ( int i = 0; i < numRunes; i++ )
    			{
    			numGen[i] = rnd.Next(0, 23); // x runes
    			}
    	// time to sort.
    	Array.Sort(numGen);
    	// now throw into dupe checker
    	if ( checkDupe(numGen) )
    		{
    		return GenerateRunes(numRunes); //woot internal method call!
    		}
    	else return numGen;
    	}
    
    public void drawImage(int numRunes, int numBags)
    	{
    		List<int> usedInts = new List<int>();
    		PictureBox[] boxes = {MASSE RUNEBOKSER!};
    		
    		int[] runes = new int[numRunes];
    		runes = GenerateRunes(numRunes); //make the runelist
    
    		for ( int i = 0; i < runes.Length; i++ )
    			{
    				boxes[i].ImageLocation = files[runes[i]];
    			}	
    	}
    	
    private bool checkDupe(int[] array)
    	{
    		if ( array.Length < 2 )
    			{
    			return false;
    			}
    
    		for ( int i = 0; i < array.Length; i++ )
    			{
    			for ( int j = i+1; j < array.Length; j++ )
    			{
    				if ( array[i] == array[j] )
    					{
    					return true; //we found a dupe
    					}
    				}
    			}
    		return false; // all good, no dupes.
    	}
    	
    

    Nå må jeg bare finne ut hvorfor jeg får stackoverflow når jeg ber om mer enn 18 runer.

  10. Velg ut alle de random tallene først, deretter tegner du runene ut i fra det. Én ting om gangen.

     

     

    Random X ganger -> array -> sorter array -> se etter tall som gjentar seg -> om duplikater slett og start på nytt?

     

     

    sånn for eksempel?

    for ( int i = 0; i < numRunes; i++ )
    	{
    		numGen[i] = rnd.Next(0, 23); // x runes
    	}
    
    Array.Sort(numGen);
    
  11. Hmm, må lese litt på det der orderby opplegget, er enda mye jeg ikke har kontroll på innenfor c#

     

    Faktisk er det lite jeg faktisk har kontroll på. Men sånn er det når man er fersk.

     

     

    Kjapt oppsummert så er teorien bak hele systemet dette:

     

    • 24 runer, listet opp fra 0 til 23.

     

    Jeg vil ha 8 runer!

     

    • random tall mellom 0 og 23.
      • ​tegn runen på skjermen
      • putt tallet i en beholder
    • Velg nytt tall mellom 0 og 23
      • dersom tallet som ble valgt er allerede i beholderen, prøv på nytt!
      • gjennta til man når 8 unike resultater.

    Men dette får jeg ikke til i koden.

     

    Beklager om dette ikke kom helt klart frem i førsteposten.

  12. Heisann,



    Sitter å fomler i mørket, uten noen åpenbart lys i sikt.

    Intensjonen er å lage et verktøy som lar meg legge fram X tilfeldige runer på skjermen.

    Det er totalt 24 forskjellige å velge mellom. Jeg tillater IKKE duplikater, altså jeg skal ikke ha samme runa 2 ganger.


    Dette får jeg ikke til, har sett meg blind på koden og trenger nå friske øyne.

    Har følgende metode

    public void drawImage(int numRunes, int numBags)
    	{
    	List<int> usedInts = new List<int>();
    	PictureBox[] boxes = {
    	runeBox1, runeBox2, runeBox3, runeBox4, runeBox5, runeBox6, runeBox7, runeBox8, 
    	runeBox9, runeBox10, runeBox11, runeBox12, runeBox13, runeBox14, runeBox15, runeBox16, 
    	runeBox17, runeBox18, runeBox19, runeBox20, runeBox21, runeBox22, runeBox23, runeBox24, 
    	runeBox25, runeBox26, runeBox27, runeBox28, runeBox29, runeBox30, runeBox31, runeBox32, 
    	runeBox33, runeBox34, runeBox35, runeBox36, runeBox37, runeBox38, runeBox39, runeBox40, 
    	runeBox41, runeBox42, runeBox43, runeBox44, runeBox45, runeBox46, runeBox47, runeBox48
    	};
    	int[] possibleRunes = Enumerable.Range(0, 23).ToArray();
    	int sharedCounter = 0;
    	Random rnd = new Random();
    	if ( numBags == 1 ) // less than 2 bags? That means you cant have dupes!
    		{
    		while ( sharedCounter < numRunes )
    			{
    			int selected = rnd.Next(0, 23);
    			if ( !checkDupe(selected, numRunes, usedInts) )
    				{
    				boxes[sharedCounter].ImageLocation = files[selected];
    				sharedCounter++;
    				}
    			else
    				{
    				sharedCounter--; //decrement the counter i, so that it tries again.
    				}
    			}
    
    		}
    			else //he has more than one bag, dupes are ok.
    			{
    			while ( sharedCounter < numRunes )
    				{
    				int selected = rnd.Next(0, 23);
    				boxes[sharedCounter].ImageLocation = files[selected];
    				sharedCounter++;
    				}
    			}
    		} 

    Inne i en IF statement kaller jeg på metoded som skal sjekke duplikater, og deretter returnere en bool som sier om jeg skal prøve igjen eller tegne runen.

    private bool checkDupe(int numToCheck, int tests, List<int> used)
    	{
    		for ( int i = 0; i < tests; i++ )
    			{
    			if ( !used.Contains(numToCheck) )
    				{
    				System.Console.WriteLine("Not a duplicate, returned false");
    				used.Add(numToCheck);
    				return false;
    				}
    			else
    				{
    				System.Console.WriteLine("Duplicate, returned true");
    				return true;
    				}
    			}
    		//defaults to false, as a fallback
    		return false;
    	}
    

    Dette er nå siste versjon av duplikatsjekkern.. hvor er det jeg er dum (i henhold til duplikatsjekken)

    Er relativt sikker på at koden er horibelt uoptimalisert, og har en bug inni dær som gjør at den kræsjer i blant under tegning av runen.

  13. Hei, har av en eller annen grunn fått en rar feil i de nyere AMD driverne, helt siden driver versjon 10.0 har skjermen min vist en meget snodig feil.

     

    Jeg får blinkende linjer i bunnen av skjermen, når jeg kjører spill eller fullskjermsapplikasjoner, eller helt tilfeldig.

     

     

    Se video.

    og denne

     

    Videoen er ulistet men tilgjengelig.

     

    Hva i alle dager er det som forårsaker dette?

  14. Etter litt iherdig googling og sånt er jeg ikke nevneverdig klokere.

     

    Myset litt i den R9 tråden og så dette :

     

    R9 290X -> HD 7970
    R9 290 -> HD 7950
    R9 280 -> HD 7870
    R9 280X -> HD 7850
    R9 270X -> HD 7770
    R9 270 -> HD 7750

     

     

    Betyr det at for ex: R9 290 er det SAMME kortet som HD 7950?

     

    Kan jeg da bare kjøpe Ett slik og ta det i crossfire, eller blir det krøll?

     

    /wat.jpg

     

    Øvrige stats: --> DxDiag.txt eeeeeeller. Se 37 pixler ned og noen til venstre.

     

    i7-3770

    8gig ram.

    ssd'er overalt

     

     

    Halp.

    DxDiag.txt

  15.  

     

    Jeg er ikke sikker på hva som er galt, bare pekte på noe som kunne væe inkonsistent.

     

    Det er en relativt fundamental forskjell mellom programmeringsspråk. Det er naturlig for mennesker å telle 1, 2, 3, 4, men i noen programmeringsspråk (som C, C++, C#, Java) så benytter man 0-indeksering. Det betyr at man teller 0, 1, 2, 3, 4 etc. Men i Visual Basic, og muligens AutoIt så er det valgfritt. Jeg mener at den implisitt bruker 1-indeksering.

     

    I Visual Basic (kan ikke AutoIt) bestemmer man dette slik:

     

    Dim myArray As Integer(0 To 99) ' Definer et array som bruker 0-indeksering

     

    Dette betyr at første indeks i arrayet er 0, altså må en For løkke se ut som den du bruker i koden.

     

    Men jeg mener, uten å være helt sikker på dette, at dersom du bare skriver slik:

     

    Dim myArray As Integer(100)

     

    Så benytter Visual Basic 1 indeksering, og da kan For løkken se slik ut:

     

    For indeks = 1 To UBound(myArray)

     

    I koden er det blandet hva som brukes:

    UBound($getTables, 1) &--#60;- Ser ut som 1-indeksering

    $episodenumber = $getTables[1][$rad] &--#60;- Er i praksis en 0-indeksering, fordi $rad starter på 0.

     

    Det er ikke helt sikkert at dette er problemet (fordi det i VB ihvertfall er fullt mulig å blande dette), men det var det første jeg så når jeg så over koden.

     

    Men hvis UBound benytter seg av 0-indeksering så kan det hende den første iterasjonen bare går én gang.

     

     

    Tror jeg skjønner, grunnen til at jeg har skrevet det slik som jeg har gjort er for at mitt $getTables array er et " 2 dimensjonalt" array, og i autoit krever UBound() at man gir array og dimensjoner, slik at den teller det rett, så begge mine for loops starter på 0, og jobber seg mot slutten.

     

    Det er derfor det også står -1 etter UBound() funksjonen

     

    Endrer jeg for eks til

     

    For $kolonne = 0 To UBound($getTables, 0) - 1

    og

    For $rad = 0 To UBound($getTables, 1) - 1

     

    Får jeg bare 8 linjer fra resultatet som egentlig skal være på 43 linjer for dette arrayet, men det er 2 ganger 4 linjer av samme.

     

    Lar jeg

    For $rad = 0 To UBound($getTables, 2) - 1

    stå får jeg dobbelt opp resultat.

     

    Og om jeg endrer begge til 0, får jeg 4 linjer, med 2 av det samme.

     

    La ved et bilde som viser hvordan arrayet ser ut

     

    Informasjonen den henter er som følger $getTables[0][3] og $getTables[0][1], det første tallet er det som skal "endres" på i for loopen min. Slik at jeg får skrevet ut alle episodene og tallene dems.

     

     

    Edit... Når tror jeg at jeg starter å komme nermere. Ser ut som ubound teller "feil" vei.

     

    Hver kolonne har 4 rader 0 til 3. Og derfor sier han at den bare er 4 stor. Makan altså. Nå må jeg finne ut hvordan jeg endrer retningen til UBound >.<

     

     

    Har løst det, problemet var ikke med hvordan arrayet var satt opp eller lest, det var med måten jeg hadde skrevet for loopen.

     

    Delte den opp i 2 looper fremfor slik det orginalt var, og nå funker det som bare tusan.

     

     

    For $kolonne = 0 To UBound($getTables, 1) - 1
     $resultData = $resultData & @LF
    Next
    For $rad = 0 To UBound($getTables, 2) - 1
      $episodenumber = $getTables[1][$rad] & " "
      $episodenumber = StringRegExp($episodenumber,'\d{1,}',2)
      $resultData = $getTables[3][$rad] & " "
      $regClean = StringRegExp($resultData, '.+\n|.+\r', 2)

     

    Slik rett og slett, og beklager dobbelposten, men hver gang jeg trykker edit så forsvinner mine > < tegn.

  16.  

     

    Jeg er ikke sikker på hva som er galt, bare pekte på noe som kunne væe inkonsistent.

     

    Det er en relativt fundamental forskjell mellom programmeringsspråk. Det er naturlig for mennesker å telle 1, 2, 3, 4, men i noen programmeringsspråk (som C, C++, C#, Java) så benytter man 0-indeksering. Det betyr at man teller 0, 1, 2, 3, 4 etc. Men i Visual Basic, og muligens AutoIt så er det valgfritt. Jeg mener at den implisitt bruker 1-indeksering.

     

    I Visual Basic (kan ikke AutoIt) bestemmer man dette slik:

     

    Dim myArray As Integer(0 To 99) ' Definer et array som bruker 0-indeksering

     

    Dette betyr at første indeks i arrayet er 0, altså må en For løkke se ut som den du bruker i koden.

     

    Men jeg mener, uten å være helt sikker på dette, at dersom du bare skriver slik:

     

    Dim myArray As Integer(100)

     

    Så benytter Visual Basic 1 indeksering, og da kan For løkken se slik ut:

     

    For indeks = 1 To UBound(myArray)

     

    I koden er det blandet hva som brukes:

    UBound($getTables, 1) &--#60;- Ser ut som 1-indeksering

    $episodenumber = $getTables[1][$rad] &--#60;- Er i praksis en 0-indeksering, fordi $rad starter på 0.

     

    Det er ikke helt sikkert at dette er problemet (fordi det i VB ihvertfall er fullt mulig å blande dette), men det var det første jeg så når jeg så over koden.

     

    Men hvis UBound benytter seg av 0-indeksering så kan det hende den første iterasjonen bare går én gang.

     

     

    Tror jeg skjønner, grunnen til at jeg har skrevet det slik som jeg har gjort er for at mitt $getTables array er et " 2 dimensjonalt" array, og i autoit krever UBound() at man gir array og dimensjoner, slik at den teller det rett, så begge mine for loops starter på 0, og jobber seg mot slutten.

     

    Det er derfor det også står -1 etter UBound() funksjonen

     

    Endrer jeg for eks til

     

    For $kolonne = 0 To UBound($getTables, 0) - 1

    og

    For $rad = 0 To UBound($getTables, 1) - 1

     

    Får jeg bare 8 linjer fra resultatet som egentlig skal være på 43 linjer for dette arrayet, men det er 2 ganger 4 linjer av samme.

     

    Lar jeg

    For $rad = 0 To UBound($getTables, 2) - 1

    stå får jeg dobbelt opp resultat.

     

    Og om jeg endrer begge til 0, får jeg 4 linjer, med 2 av det samme.

     

    La ved et bilde som viser hvordan arrayet ser ut

     

    Informasjonen den henter er som følger $getTables[0][3] og $getTables[0][1], det første tallet er det som skal "endres" på i for loopen min. Slik at jeg får skrevet ut alle episodene og tallene dems.

     

     

    Edit... Når tror jeg at jeg starter å komme nermere. Ser ut som ubound teller "feil" vei.

     

    Hver kolonne har 4 rader 0 til 3. Og derfor sier han at den bare er 4 stor. Makan altså. Nå må jeg finne ut hvordan jeg endrer retningen til UBound >.<

    post-51297-0-11682700-1348038991_thumb.png

  17. Du blander mellom 0 og 1 indeksering ser det ut til.

     

    Er ikke helt sikker på hva du mener der, nå skal det da sies at jeg har sitti i hele natt og skrevet dette programmet, så mye mulig at jeg roter noe vilt, du orker ikke copy paste den linjen du mener jeg har gjort feil på.

     

    Er ganske fersk på dette med programmering. :/

     

    Dersom det hjelper hiver jeg hele greia jeg har skrevet inn hær.

     

    http://pastebin.com/Xgys65d5

  18. av en eller annen grunn looper dette 4 ganger før den anser seg som ferdig, noen som kan peke på den og si "derfor... det er jo åpenbart" Er skrevet i "autoit" skripte språket, ekstremt løst basert på c++

     

    For $kolonne = 0 To UBound($getTables, 1) - 1 ; telle hvor mange kolonner som er i arrayet
    
     $resultData = $resultData & @LF ; @lf er linjebrudd
     For $rad = 0 To UBound($getTables, 2) - 1 ; samme som den andre for loopen, men denne er for radene
      $episodenumber = $getTables[1][$rad] & " " ; $getTables er et array med informasjon i, litt for mye
      $episodenumber = StringRegExp($episodenumber,'\d{1,}',2) ; hent ut bare det jeg vil ha, i dette tilfellet bare tall
      $resultData = $getTables[3][$rad] & " " ; hele episode navnet blir skrevet til variabel
      $regClean = StringRegExp($resultData, '.+\n|.+\r', 2) ; rydde litt i navnet
      FileWrite($filename, $episodenumber[0] & " - " & $regClean[0]) ; skriver både episode tall og navn til en fil
     Next
    Next
    

×
×
  • Opprett ny...