Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 16:51

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Suche Hilfe bei der C-Programmierung

Discussion on Suche Hilfe bei der C-Programmierung within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
trfreak's Avatar
 
elite*gold: 180
Join Date: Sep 2011
Posts: 621
Received Thanks: 106
Suche Hilfe bei der C-Programmierung

Hey,

Ich bin Informatik Student im Erstsemester und bräuchte Hilfe bei der Programmierung eines voll funktionsfähigen Sudoku.

Es geht um die rekursive Funktion zur Lösung eines Sudokus.

Wenn mir jmd helfen kann, könnt ihr mich gerne bei Skype adden.
Danke im Voraus

Skype: trfreak2
trfreak is offline  
Old 12/09/2018, 18:55   #2
 
sk8land​'s Avatar
 
elite*gold: 50
Join Date: Nov 2018
Posts: 1,068
Received Thanks: 2,595
Wenn du bei so einer Aufgabe noch nicht einmal einen Lösungsansatz selbstständig hinbekommst, dann war das Informatikstudium die falsche Wahl.
sk8land​ is offline  
Old 12/09/2018, 19:17   #3
 
trfreak's Avatar
 
elite*gold: 180
Join Date: Sep 2011
Posts: 621
Received Thanks: 106
Quote:
Originally Posted by sk8land​ View Post
Wenn du bei so einer Aufgabe noch nicht einmal einen Lösungsansatz selbstständig hinbekommst, dann war das Informatikstudium die falsche Wahl.
Bin dabei es zu lernen, also ist das wirklich keine Hilfe.
Das Sudoku habe ich hinbekommen, das funktioniert aufjedenfall schon.
Es wird auf Richtigkeit (Die 3 Regeln des Sudokus) überprüft.
trfreak is offline  
Old 12/09/2018, 22:29   #4



 
Serraniel's Avatar
 
elite*gold: 0
The Black Market: 205/1/0
Join Date: May 2010
Posts: 6,853
Received Thanks: 5,106
Hilfreich wäre es, welche konkreten Probleme du bei der Lösung der Aufgabe hast, damit Leute dir effektiv helfen können. "Sudoku lösen" ist relativ weit gefasst, vor allem wird nicht einmal klar ob es ein algorithmisches Problem ist, du also nicht weißt was du effektiv tun musst, oder nur nicht weißt wie man es implementiert. Da solltest du konkreter werden und ggf. deine bisherigen (ggf. fehlgeschlagenen) Ansätze mit posten.


Notiz am Rande: Verweis auf Skype ist zudem nicht wirklich notwendig oder gern gesehen; wenn du dein Problem nicht öffentlich diskutieren magst (und somit ggf. anderen mit dem selben Problem in Zukunft damit eine Lösung zu bieten) brauchst du auch nicht öffentlich nach Hilfe fragen.
Serraniel is offline  
Thanks
2 Users
Old 12/11/2018, 14:40   #5
 
elite*gold: 0
Join Date: Feb 2009
Posts: 1,137
Received Thanks: 573
Für einen rekursiven Algorithmus musst du Basisfälle finden, und dann dein Problem darauf kollabieren lassen.

Der Basisfall bei Sudoku ist wenn ein Feld nur eine legale Belegung hat.
Für jedes Feld für das es mehrere Belegungen gibt musst du zunächst die freien Nachbarn (selbe reihe, selbe Zeile oder selbes Kästchen) auswerten.

Das ist aber nur das sehr simple grundgerüst, und alles andere als optimal (wobei ich Sudoku auch nicht rekursiv lösen würde). Wenn es aber keine anderen Einschränkungen gibt außer das es rekursiv sein muss kann man auch andere lustige Algorithmen basteln. z.B.
Code:
bool solveField(index) {
  if (index == fieldCount) return checkIfGameIsValid();
  else if (index) {
    gameFields[index] = rand() % 9;
    return solveField(index + 1);
  } else do {
    gameFields[index] = rand() % 9;
  } while (!solveField(index + 1));
  return true;
}
warfley is offline  
Old 12/12/2018, 01:51   #6
 
sk8land​'s Avatar
 
elite*gold: 50
Join Date: Nov 2018
Posts: 1,068
Received Thanks: 2,595
Quote:
Originally Posted by warfley View Post
Für einen rekursiven Algorithmus musst du Basisfälle finden, und dann dein Problem darauf kollabieren lassen.

Der Basisfall bei Sudoku ist wenn ein Feld nur eine legale Belegung hat.
Für jedes Feld für das es mehrere Belegungen gibt musst du zunächst die freien Nachbarn (selbe reihe, selbe Zeile oder selbes Kästchen) auswerten.

Das ist aber nur das sehr simple grundgerüst, und alles andere als optimal (wobei ich Sudoku auch nicht rekursiv lösen würde). Wenn es aber keine anderen Einschränkungen gibt außer das es rekursiv sein muss kann man auch andere lustige Algorithmen basteln. z.B.
Code:
bool solveField(index) {
  if (index == fieldCount) return checkIfGameIsValid();
  else if (index) {
    gameFields[index] = rand() % 9;
    return solveField(index + 1);
  } else do {
    gameFields[index] = rand() % 9;
  } while (!solveField(index + 1));
  return true;
}
Genau so ein Ansatz ist wahrscheinlich gefragt. Allerdings sollte man das (teilweise gefüllte) Feld in jedem Zwischenschritt validieren und nicht immer erst am Ende, damit die Rekursionen jeweils frühzeitig abbrechen. Ansonsten geht man quasi alle kombinatorischen Möglichkeiten durch. Weil das von der Größenordnung 9^81 sind, wird der Algorithmus nicht in absehbarer Zeit eine Lösung finden.
sk8land​ is offline  
Reply


Similar Threads Similar Threads
Hilfe bei der Klausur für C-Programmierung
07/05/2018 - C/C++ - 4 Replies
Hey Leute, habe hier eine Aufgabe die ich in der letzten Klausur nicht beantworten konnte und punkte verloren habe. Meine Frage wäre was muss man bei t schreiben und wieso nutzt man dieses malloc und das anschließende "sizeof(float)" ? Vielen Dank schon im Vorraus :)
[S] JSF programmierung mit vorhanden Backend Programmierung
01/19/2016 - Coders Trading - 0 Replies
Hallo, suche jemanden der mir was ganz leichtes per JSF programmiert. Ich habe eine Java Anwendung programmiert die Einträge via JPA in die DB speichert. Jetzt bräuchte ich eine JSF Anwendung welche mir die Einträge zb: Angestellter X verkauft an Käufer Y das Auto Z um 5000€.
[B]Web-Programmierung, App-Programmierung
01/10/2015 - Coders Trading - 14 Replies
Hallo epvp Freunde, Ich erstelle ein professionelles Webdesign mit modernster Technik nach deinen Vorgaben und zu fairen Preisen. Aktualisiere deine neue Webseite selbst, änder vorhandene Seiten oder ergänze Texte und Bilder. Jederzeit - wann und wo du willst. Meine Kenntnisse: Webdesign Web-Programmierung (€ 35/Stunde)
Suche hilfe bei Java Programmierung
02/09/2012 - Web Development - 4 Replies
Hallo epvp Ich habe eine Frage an euch. Die wäre mein Vater betreut eine Homepage vom THW-Jugend-Frankenberg. Wir möchten dafür gerne eine uhr haben die auf unsern server gehostet wird (1&1). Es gibt genug seiten aber wenn die down gehen ist ja auch die Uhr down ... Deswegen suche ich einen Open source code der es Ermöglicht eine uhr zu haben die auf einer Homepage läuft wo in der Mitte das Bild vom THW-Jugend ist ;) Wenn einer sowas machen würde/könnte wäre es super nett denn ich/er...
Brauche hilfe bei der Programmierung eines raid such programms
11/02/2009 - General Coding - 0 Replies
Hey Leute Ich spiele das spiel lineage2. Dar sich in den letzten monaten, einiges an dem privi server verändert hat (bessere waffen (Raid stats runtergestufft) wurden, möchte ich mir ein programm coden, was mir zeigt ob der genannte raid noch da ist oder nicht. Weiss bloss leider nicht wie ich genau damit anfangen soll



All times are GMT +1. The time now is 16:51.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.