Programmieren – die neusten Beiträge

Buchempfehlung C programmieren lernen für fortgeschrittenen Anfänger?

Guten Abend,

die Kernpunkte meiner Frage stehen eigentlich im Titel. Ich bin gerade in ein duales Studium im Bereich Embedded Systems gerutscht und möchte mich nun auch praktisch darauf vorbereiten. Nun würde ich mir gerne etwas Literatur dafür anschaffen.

So wie ich es einschätze und wie es auch in den Quellen meiner Recherche dargestellt wird, ist C wohl die sinnvollste Programmiersprache in diesem Feld. An dieser Stelle eine kleine Nebenfrage: Würdet ihr dem zustimmen oder wäre eine andere Wahl kleverer? Bis vor kurzem (aktuell mit kleiner Pause) habe ich C# gelernt, sollte ich die dort erlernten Grundprinzipien (sofern übertragbar) als Grundlage nutzen und einfach mit der für meine Zwecke passenderen Sprache C weitermachen oder sollte ich C# fortsetzen und mit dem C lernen warten?

Nun weiter mit der eigentlichen Frage :') Angenommen ich entscheide mich fürs C lernen, welches Buch könnt ihr empfehlen? Bei der Suche beschleicht mich irgendwie das Gefühl, dass es (überspitzt formuliert) zwei Arten an Büchern gibt. Einerseits die Nachschlagewerke, welche eigentlich nur hilfreich für jemanden sind, der die Sprache grundsätzlich schon beherrscht, andererseits komplette Anfängerbücher, welche Ewigkeiten grundlegende Themen wie Variablen behandeln und deren Inhalt nur sehr seicht sind.

Habt ihr eine Empfehlung für ein Buch dazwischen? Also eins, welches für das Selbststudium taugt, für jemand der mit der Materie nicht komplett unvertraut ist und das auch eine gewisse Tiefe hat, sodass nicht gleich nach einem Thema wie Rekursion Schluss ist?

Über Antworten würde ich mich sehr freuen!

PC, Computer, Schule, IT, programmieren, Fachbuch, Informatik, Programmiersprache, Ausbildung und Studium

C# kann Variable in der selben Klasse nicht benutzen?

Moin,

Bin grad dran einen Launcher zu erstellen und hab eine Funktion gemacht womit man eine Exe Datei wählen kann die als String Variable namens filePath gespeichert wird, wenn ich diese rufen will damit der Launch Button weiß was er starten soll bekomme ich den Error "Der Name "filePath" ist im aktuellen Kontext nicht vorhanden."

Wie kann ich hin bekommen das die Variable von der gesamten Klasse verwendet werden kann?

Code in Frage:

        private void button8_Click(object sender, EventArgs e)
        {
            using (OpenFileDialog openFileDialog = new OpenFileDialog())
            {
                openFileDialog.InitialDirectory = "c:\\";
                openFileDialog.Filter = "Exe Files (.exe)|*.exe"; ;
                openFileDialog.FilterIndex = 2;
                openFileDialog.RestoreDirectory = true;


                if (openFileDialog.ShowDialog() == DialogResult.OK)
                {
                    String filePath = openFileDialog.FileName;
                    textBox1.Text = filePath;
                }
            }
        }


        private void button7_Click(object sender, EventArgs e)
        {
            string WindowsUser = Environment.UserName;
            string GameName = "Game";
            System.Diagnostics.Process.Start($@"C:\Users\{WindowsUser}\AppData\Local\{GameName}\Saved\SaveGames.");
        }


        private void button1_Click(object sender, EventArgs e)
        {
            System.Diagnostics.Process.Start($"{filePath}");
        }
    }
}
Computer, Technik, programmieren, C Sharp, Code, Informatik, Visual Studio

JavaScript: Preise aus mehreren Dropdown-Listen addieren?

Liebe*r Leser*in,

ich würde gerne in vier (4) Dropdown-Listen verschiedene Produkte mit teils verschiedenen Preisen auflisten. Je nach Auswahl soll dann eine Summe aus einem vorher festgelegtem Wert und zusätzlich die Summe aus jeweils einem Wert von jedem der vier Dropdown-Listen ausgegeben werden.

Also: Wert+Drop1+Drop2+Drop3+Drop4=Summe

Insgesamt habe ich 16 Produkte, die auf die Dropdown-Listen aufgeteilt sind, und einen Festwert, der als Startpunkt dient.

Mein Niveau ist als "totaler Anfänger" zu beschreiben. Daher bitte ich darum, nicht allzu viel vorauszusetzen. :)

Hier mal meine Zeilen:

        <div class="auswahlliste">
  			<select id="produktliste1">
  				<option value="0.60">Produkt1 (0,60 €)</option>
  				<option value="0.60">Produkt2 (0,60 €)</option>
  				<option value="0.60">Produkt3 (0,60 €)</option>
  				<option value="0.50">Produkt4 (0,50 €)</option>
  			</select>
  		</div>
  	
  		<div class="auswahlliste">
  			<select id="produktliste2">
  				<option value="1.10">Produkt1 (1,10 €)</option>
  				<option value="0.70">Produkt2 (0,70 €)</option>
  				<option value="0.65">Produkt3 (0,65 €)</option>
  				<option value="0.65">Produkt4 (0,65 €)</option>
  				<option value="0.60">Produkt5 (0,60 €)</option>
			</select>
		</div>
		
		<div class="auswahlliste">
			<select id="produktliste3">
				<option value="0.95">Produkt1 (0,95 €)</option>
				<option value="0.55">Produkt2 (0,55 €)</option>
				<option value="0.25">Produkt3 (0,25 €)</option>
			</select>
		</div>
		
		<div class="auswahlliste">
			<select id="produktliste4">
				<option value="0.60">Produkt1 (0,60 €)</option>
				<option value="0.60">Produkt2 (0,60 €)</option>
				<option value="0.60">Produkt3 (0,60 €)</option>
				<option value="0.50">Produkt4 (0,50 €)</option>
			</select>
		</div>

Die Summe soll dabei immer automatisch als Text ausgegeben und bei veränderter Auswahl auch neu berechnet und angezeigt werden.

Ich würde mich sehr freuen, wenn mir jemand helfen möchte!

Beste Grüße
4n0nym3r

Computer, Technik, HTML, programmieren, JavaScript, Technologie, Spiele und Gaming

Js loop?

 <script>
       let alarm = new Audio('alarm.mp3');
       let timerStarted = false;
       function startTimer() {
           if (!timerStarted) {
               let startTime = new Date().getTime();
               let fiveMinutes = 1000 * 60 * 5;
               let endTime = startTime + fiveMinutes;
               setInterval(function() {
                   let timeLeft = endTime - new Date().getTime();
                   if (timeLeft > 0) {
                       let minutes = timeLeft / (1000 * 60);
                       minutes = Math.floor(minutes);
                       let seconds = (timeLeft / 1000) % 60;
                       seconds = Math.round(seconds);
                       seconds = ('0' + seconds).slice(-2);
                       let text = '0' + minutes + ' : ' + seconds;
                       timer.innerHTML = text;
                   } else {
                       alarm.play();
                       timer.innerHTML = '00 : 00';
                   }
               }, 1000);
               timerStarted = true;
           }
       }
   </script>

Ich möchte diese Aktion gerne loopen (dass der timer immer neu startet nach dem Alarm) wie geht das?

Computer, HTML, programmieren, JavaScript

wie füge ich ein JLabel in ein JFrame ein?

Hallo zusammen,

Ich bin noch sehr neu auf diesem Gebiet und bennötige noch viel Unterstüzung was das Programmieren angeht.

ich programmiere mit Java und arbeite mit verschiedenen Klassen.

Leider funktioniert etwas nicht jedoch weiss ich nicht was...
Das Frame öffnet, jedoch wird das Bild nicht eingefügt.

vielen Dank schon im Voraus

LG Roman

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;

import javax.swing.JLabel;

public class vLabel extends JLabel{

	private static final long serialVersionUID = 1L;

	
	protected void paintComponent (Graphics g) {
		
		
		super.paintComponent(g);
		Graphics2D gd2 = (Graphics2D) g;
		gd2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
		
		try {
			System.out.println("succesfully loaded picture");
			g.drawImage(Var.ib1, 0, Var.y, 1200, 800, null);
			
			
			
			
		} catch (Exception e) {
			
			e.printStackTrace();
			Var.fehlerbeimhochladen = true;
			System.out.println("something went wrong");
		}
		repaint();
	}
	public vLabel() {
		
		
		Var.geladeneklassen ++;
		System.out.println(Var.geladeneklassen + " / " + Var.anzklassen + " ~ class vLabel");
	}
}
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Gui {
	public Gui() {
		
		Var.jf1 = new JFrame();
		Var.jf1.setSize(Var.screenw, Var.screenh);
		Var.jf1.setVisible(true);
		Var.jf1.setResizable(false);
		Var.jf1.setTitle("Projekt one");
		Var.jf1.requestFocus();
		Var.jf1.setLayout(null);
		Var.jf1.setLocationRelativeTo(null);
		
		Var.lbl1 = new vLabel();
		Var.lbl1.setBounds(0, 0, Var.screenw, Var.screenh);
		Var.lbl1.setVisible(true);
		try {
			Var.jf1.add(Var.lbl1);
			
			System.out.println("succesfully loaded Label into JFrame");
		}
		catch (Exception e){
			System.out.println("something went wrong " + "jf1.add(Var.lbl1)");
			Var.fehlerbeimhochladen = true;
		}
		
		Var.geladeneklassen ++;
		System.out.println(Var.geladeneklassen + " / " + Var.anzklassen + " ~ class Gui");
	}

}
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Var {
 

	
	static int x = 6;
	static int y = 0;
	static int gox = 10;
	static int goy = 10;
	static JFrame jf1;
	static int screenw = 1200, screenh = 800;
	static JLabel lbl1;
	static int geladeneklassen = 0, anzklassen = 0;
	static boolean geladen = false, fehlerbeimhochladen = false;
	
	static BufferedImage ib1;
	public Var() {
		
		
		try {
			
			ib1 = ImageIO.read(new File("src/p2.png"));
			
		}
		catch (IOException e){
			
			e.printStackTrace();
			Var.fehlerbeimhochladen =true;
			System.out.println("something went wrong "+ "images");
		}
		
		
		geladeneklassen ++;
		System.out.println(geladeneklassen + " / " + anzklassen + " ~ class Var");
	}
}
Computer, programmieren, Java

Meistgelesene Beiträge zum Thema Programmieren