Inlägg

Inlägg som lydell har skrivit i forumet
Av lydell

Snyggt! Nu har du kommit fram till precis den kod som flera av oss hintat om 👍

Av lydell

Tricket är att först gå igenom listan med tal enbart för att ta reda på om det blev bingo eller inte, och efter det köra Console.WriteLine med olika texter beroende på om det blev bingo eller inte.

Av lydell

När man vill att ens program inte ska göra någonting alls en viss tid så är ”sleep” det vedertagna begreppet i många programmeringsspråk. Sök på ”sleep c#” så borde du hitta hur man gör.

(Edit: Too slow )

Av lydell

Hej!

Jag är också nybörjare på datorbygge. Jag satte ihop min dator för ett drygt år sedan – också i ett Ncase M1 6.1: NCASE M1 V6.1 – Nybörjarbygge. Recension och temperaturtester.

Skrivet av ljohansson:

GPU: Gigabyte Geforce RTX 3060 12GB GAMING OC (inköpt) - Jag hade gärna fått ett 3070/3060ti, men 3070 känns för saftigt för mig när det ligger runt 10 000 och 3060ti har jag aldrig sett i lager.

Jag har ett RTX 2060. För spel med några år på nacken kan jag köra på högsta grafik i 2560×1440-upplösning. När jag spelar Mafia Definitive Edition (September 2020) fick jag skruva ned grafiken litegrann för att utan problem hålla mig över 60 FPS, medan brorsan som har ett RTX 2080 kan köra på högre inställningar. Om det nu är samma prestandaskillnad mellan 3060 och 3080 så kanske det ger ett hum.

En fördel med att inte ha det fetaste kortet är att det blir lättare att kyla. Som du ser i mitt bygge har egentligen bara en enda chassifläkt.

Citat:

PSU: Corsair SF600, 600W PSU SFX - räcker detta?

Jag fick höra att man inte ska snåla på PSU:n, så jag köpte Corsair SF750 V2 750W Platinum.

Citat:

Moderkort: Tar gärna emot tips. ( Stöd för bra wifi och bluetooth är viktigt för mig)

Jag kan inte inte så mycket om moderkort, men nåt jag märkte när jag skulle köpa var att det inte finns sådär jättemånga att välja på när man är ute efter ITX och AMD. Det fanns en del alldeles för billiga, några svindyra med de allra senaste grejerna som jag inte behöver, och några lite mer lagom prissatta. Jag tog det som Optimum Tech rekommenderade vid den tiden.

Citat:

Ram: Jag har tänkt 32gb, några tips?

Jag köpte 32 GB och har inte ångrat mig. Det blev Corsair Vengeance LPX 2x16GB DDR4 3200MHz CL16, mest för att de var på rea på Black Friday. Fick känslan att valet av CPU och GPU var viktigare när jag skulle köpa.

Citat:

Övrigt: Är det något jag glömt som jag borde köpa in för att kunna bygga detta? Får förmodligen köpa på mig lite skruvmejsel set.

Det enda verktyget jag använde egentligen var en liten magnetisk skruvmejsel med lite olika bits som jag fick med ett tangentbord jag köpte.

Av lydell

Här tar min Python-kunskap slut tyvärr.

Av lydell

❯ python2 Python 2.7.16 (default, Dec 21 2020, 23:00:36) >>> 'å' '\xc3\xa5' >>> print '\xc3\xa5' å >>> 'å'.encode('string-escape') '\\xc3\\xa5' >>> 'å'.encode('string-escape').decode('utf-8') u'\\xc3\\xa5' >>> print 'C:\\Users\\User\\Desktop\\\xc3\xa5\xc3\xa4\xc3\xb6\\' C:\Users\User\Desktop\åäö\

'\xc3\xa5' är ett annat sätt att göra 'å'.

Ta bort .encode('string-escape').decode('utf-8') kanske?

Av lydell

Problemet är inte åäö utan att du glömt escape:a dina backslash. Det här ska funka bättre:

record_folder = "C:\\Users\\User\\Desktop\\åäö"

Kom ihåg att \ är ett specialtecken i strängar. Till exempel "\U00a0" blir ett så kallat ”non-breaking space”. "\Users" däremot är en ogiltig escape. Om man vill ha faktiska backslash behöver man dubblera dem.

(Notera också att Python 2 is sunset.)

Av lydell

Jag sökte på ”Dart” i forumet nu. Övriga trådar har inte samma kod som du. Så jag utgår ifrån att det ingår i uppgiften att skriva koden från scratch.

Skrivet av Inter_1908:

Du får gärna förklara som om jag helt rudis (det är inte så långt ifrån sanningen).

Koden är lite för bra för att vara skriven av en helt nybörjare, tycker jag. Vad är sanningen?

Av lydell

Jag vet inte hur jag ska förklara det bättre. Kanske någon annan på forumet kan hjälpa till.

Av lydell

Jag skulle testa att skapa datorspelaren i början av PlayGame: Player bot = new Player("DartBot 9000");.

Efter din foreach (var player in nameList)-loop skulle jag printa att det är datorspelarens tur och anropa player.Add_turn med 3 random-scores (som du visade hur man slumpar fram).

Jag skulle flytta ut logiken för att kolla om någon har vunnit till efter att datorspelaren har gjort sitt. Då får alla spelare en chans att göra klart rundan och slåss om andraplatsen. När du flyttar och ändrar på vinst-logiken kan du passa på att lägga in att kontrollera bot:s poäng också.

Alternativt kan du testa att lägga in din bot i nameList. Då behöver du något sätt att kunna se skillnad på en mänsklig spelare och en datorspelare (du kan till exempel göra en Bot-klass som ärver från Player, eller lägga till någon flagga på Player). I for (int i = 0; i < darts.Length; i++)-loopen får du då behålla nuvarande beteende (prompta efter ett tal) för mänskliga spelare, och lägga till att istället skapa ett slumpmässigt tal för datorspelare. Den här approachen låter dig ha fler än en datorspelare om du vill på ett smidigt sätt.

Av lydell

Vad gör en datorspelare? Får den ett slumpmässigt antal poäng varje runda?

Av lydell

Är det här en skoluppgift? I så fall är jag glad att jag inte studerar programmering.

Av lydell

Har du stött på det här problemet kanske? https://github.com/microsoft/vscode-python/issues/15821

Av lydell
Skrivet av system_interactive:

hämtar data via ett API

Då behöver du ett programmeringsspråk. Om du redan kan Java och C# – ta nån av dem.

Citat:

som jag sedan vill lagra i en relationsdatabas

Då behöver du en relationsdatabas Bra att du redan kan lite SQL. Jag har hört att SQLite ska vara enkel att komma igång med.

Citat:

och där jag sedan hämtar data ifrån dagligen (på ett intervall av 1 gång var 10 minut).

Då behöver du antingen köra ditt program ”för evigt” med något i stil med sleep(10 minutes), eller använda en schemaläggare. Det finns en schemaläggare inbyggd i Windows, en grej som heter cron och en uppsjö andra program beroende på hur avancerat du vill göra det.

Eller menade du att din HTML-sida hämtar data från din databas var 10:e minut? I så fall kan du använda dig av JavaScript’s setInterval.

Citat:

Datan vill jag använda och hantera på en hemsida, i tabellform.

Då behöver du generera HTML (och styla det snyggt med CSS). De flesta programmeringsspråk har frameworks eller template engines för detta. Du kan också välja att rendera det i webbläsaren istället med JavaScript (i så fall kan du skicka datan som JSON till webbläsaren).

Hantera – betyder det att ändra på datan? I så fall behöver du formulär eller JavaScript på sidan som skickar kommandon till din backend som ändrar i din databas.

Slutligen behöver du köra din backend och din databas på en server.

Av lydell
Skrivet av karu83:

Jag ändrade min Java till detta

Java och JavaScript är förvirrande nog två helt olika språk som inte har sådär jättemycket med varandra att göra! Det är JavaScript du sysslar med i det här fallet.

Citat:

Känns som det borde finnas en snyggare och mer kompakt metod?

Ja, du skulle kunna strunta att lägga på en siffra och bara köra med tab på allihop. JavaScript i den här stilen borde kunna funka då:

<script> $(document).ready(function() { $(".tab .single-bottom").hide(); $(".tab ul").click(function(event) { $(event.target).closest(".tab").find(".single-bottom").slideToggle(300); }) }); </script>

Det var ett tag sedan jag skrev jQuery nu så jag har säkert missat någon liten detalj.

event.target är elementet du klickade på, .closest letar ”uppåt” och find letar ”nedåt”.

Ett annat tips: ul-element (oordnad lista/punktlista) är inte ett klickbart element i sig (men det är inget som stoppar dig från att lägga klicklyssnare på dem, som du märkt). Ett button-element skulle kunna passa bättre här (det behöver inte se ut som en typisk knapp – du kan styla den som du vill så länge man fattar att det går att klicka där).

Av lydell

Din JavaScript-kod nämner tab1-tab5, men i HTML-koden finns bara tab1.

I @foreach($sections as $section)-loopen behöver du se till att det blir 1, 2, 3, 4, 5 och inte bara 1 i varje iteration.

Om det är Laravel Blade du använder så verkar man kunna göra något i den här stilen:

@foreach($sections as $section) <div class="tab{{ $loop->iteration }}">

Därefter behöver du uppdatera din JavaScript-kod: Det är bara .tab1 ul som får klick-lyssnare.

Men du kanske vill tänka om lite mer. Vid klick på vilken ”tab” som helst så borde du kunna göra så här:

  1. leta reda på alla tabs

  2. för varje tab: kollapsa den

  3. expandera den tab du klickade på

Av lydell

Undrar du egentligen hur man gör ett >-tecken i HTML? I så fall är svaret: &gt;. Konceptet heter HTML Entities.

Av lydell
Skrivet av OldComputer:

Dom exakta felmeddelanden är ganska många men skriver jag ord som const, let, var så får jag upp felmeddelande om att dom inte är deklarerade (orden const, let, var alltså, inte bokstaven). function är ett reserverat ord som inte får använda parenteser, vad det nu betyder.

Jag gissar på att din editor antingen är inställd på ES5 (eller äldre) alternativt inte alls stödjer ES6+. Åtminstone let är ett giltigt variabelnamn i ES5, så om du skriver let hej = "på dig" så kan det vara så att den förväntade sig var let hej = "på dig". Den borde också ge syntax error på hej.

Så … kolla upp om Brackets stödjer modern JavaScript och i så fall hur du aktiverar det. Alternativt byt editor då Brackets är EOL.

Citat:

console.log ändras automatisk då man inte får använda "." och tydligen måste använda citattecken ("");

Wat! Låter som spiken i kistan för Brackets! Testa VSCode vet ja!

Av lydell
Skrivet av OldComputer:

skriker om att det inte är deklarerat etc

Det är bra att posta exakt felmeddelande. Nu gissar jag, men en del verktyg kräver att man specificerar vilka globala variabler man förväntar sig finnas. Man kan t ex välja om man vill ha browser-globals (window, document, location, mfl) eller Node.js-globals eller något helt annat. Du kanske behöver ställa in nåt sånt i Brackets?

Av lydell

Jag tänker att uträkningen blir så här:

kontosaldo = insättning; antalår = 0; while (kontosaldo < sparmål) { antalår++; kontosaldo = kontosaldo * ränta + insättning; }

(ränta tänker jag är ett tal typ 1.02 (för 2% ränta).)

Du börjar med insättning kr. Om det redan är större eller lika med än sparmålet, ja då behöver du inte spara alls – antalår förblir 0.

Annars går vi in i loopen. Det går ett år. Då har du kontosaldo gånger ränta på kontot. Dessutom sätter du in insättning kr till. Och så rullar det på tills sparmålet är uppfyllt.