PythonUppgift
försöker skriva ett program för att besvara frågan:
Programmeringsuppgift:Skriv ett program som löser ekvationen, Z^n =a + bi
där a, b heltal och n är ett positivt heltal.
Användaren av programmet ska kunna välja talen n, a och b själv.
Mitt försök var såhär men sedan förstår jag inte varför de blir inte rätt det kmr röd ruta, vad ska jag ändra för att få det rätt ? Vart gör jag fel ?
Jag kan inte Python, men att döma av felmeddelandet så verkar det inte finnas ngn metod pow i modulen cmath.
Ska jag kanske istället i rad 6, skriva cmath.power_n=c**n,
Blir oxå fel då..de it det säkert. Då jag gör det får jag z^n = none istället
Din kod verkar försöka lösa fel uppgift. Du ska inte upphöja a+bi till n.
Titta i dokumentationen för cmath och se vad du kan använda där.
Upgift skrev fel förlåt...
Programmeringsuppgift:Skriv ett program som löser ekvationen, Z^n =a + bi
Gjort om, är det rätt gjort nu ?
Men räknar jag för hand blir svaret 2 av ekvationen..är det ngt som blir fel , vad i så fall :/
Tillägg: 2 nov 2023 15:14
Nu får jag det till 2 , det verkar rimligt.
Är det rätt kan jag lämna under såhär ?
Eller bör jag skriva på annat sätt
Jag tror uppgiften går ut på att lösa ekvationen för variabeln .
Du gör något annat. Drar roten ur och verkar stundtals vilja räkna ut eller . Kanske missförstår vi vad din uppgift är? Kan du lägga in en bild på själva uppgiften?
Så här tror jag att uppgiften är tänkt att fungera enligt den formulering du själv givit
Ekvationen har parametrarna
Och lösningarna
Din uppgift är att skapa ett program som löser ekvationen och skriver ut de rötterna givet parametrarna och .
Tillägg: 2 nov 2023 15:43
Bild på upgiften.
Kontrollera om din nuvarande kod ger de två svaren och om du anger och
Om den inte gör det måste du utöka koden så att den anger samtliga rötter, inte bara första tänkbara.
Sedan kan du testa och för och kontrollera att du får tre rötter varav en av rötterna faktiskt blir osv.
Ska skriva istället för a=8 , b= 0 , n= 3
Blir det såhär =
Tillägg: 2 nov 2023 15:52
Det blir fel, men för just den upgiften vi fått blev det rätt :/
Vad är det som blir fel?
Får du fel antal rötter?
Ser rötterna konstiga ut? T.ex. (1.0000000000000004+2.9999999999999996j) istället för 1+3j?
Lösningarna på ekvationen är
Jag förstår inte riktigt, satte jag in sosiffran du sa så fick jag 2.0+1.0i
Inga
z1
Z2
Z3
Jag menar
Ekvationen har 3 lösningar
Ekvationen har 12 lösningar
Ekvationen har 7 lösningar
Ekvationen har lösningar
Ditt program skriver bara ut en enda lösning. Du måste skriva ut lösningar.
Tillägg: 2 nov 2023 16:29
Såhär ?
Är det rätt nu ?
Ja, nu ser det bra ut. Möjligtvis kan du döpa om "resultater" till "resultaten" eller "lista_med_rotter". Men det har mer med svenska att göra.
Har du tagit hjälp av chatGPT eller copilot? Lite varning på listhantering och konstruktioner som r = [c ** (1 / n)] samt användning av enumerate i effektiva loopvillkor.