JAVA-Problem: Hexadezimalzahlen umwandeln (Binär, Dezimal)

Hey Leute, ich habe als frischer Informatikstudent ein kleines Problem.

Die Aufgabe lautete: Wenn ich etwas eingebe, beispielsweise eine Dezimalzahl, dann soll dafür die jeweilige Hexadezimal-, Binär- oder Oktalzahl ausgegeben werden. Ein Programm für eine Binär- und Dezimalzahleingabe habe ich schon geschrieben. Diese verschiedenen Eingaben sollen nacheinander funktionieren, d.h. das folgende Programm muss dann nur noch in das Hauptprogramm gebracht werden, was denke ich kein Problem sein wird.

Problem: Eine Hexadezimalzahl kann eine Zahl oder ein Buchstabe sein, deshalb konnte ich für die einzugebende Zahl kein "int" nehmen. Ich habe jedoch keinerlei Ahnung wie ich das Programm dazu bringen kann einen String als int zu sehen... Ich habe deshalb etwas versucht was jedoch aus irgendeinem Grund nicht funktioniert. im Hauptprogramm habe ich Integer.toBinaryString(), Integer.toHexalString etc. verwendet.

Kann mir jemand das Brett vor dem Kopf entfernen? (bzw. den Denkfehler beheben....)

PROGRAMM:

import java.util.Scanner;

public class ZahlensystemHex {

public static void main(String[] args) 
{
     Scanner sc1 = new Scanner(System.in);


     System.out.println("Bitte geben Sie eine Zahl hexadezimal ein");


     String hex = sc1.next(); 


     int hex1 = Integer.parseInt(hex, 16); 
     System.out.println("Dezimal: " + Integer.toString(hex1));
     System.out.println("Binär: " + Integer.toBinaryString(hex1));


     sc1.close();
}

}

Computer, Software, programmieren, Java, Eclipse, Informatik
Welche Linux Distributionen für Programmierer?

Ich bin seit geraumer Weile ein Entwickler in Windows Bereich. Würde mich gerne mich in Linux Bereich weiterbilden. Habe gelegentlich mal Linux Distributionen ausprobiert wie Suse, Knoppix, Ubuntu.

Ich würde zwar gerne noch weitere ausprobieren. Aber jedes Mal 100mb-4gb runterzuladen, par Stunden für die Installation investieren und par Stunden lang arbeiten damit man feststellt, dass das Ganze doch nicht so flüssig läuft ist zu Zeitintensiv.

Frage: Welche Linux Distributionen für Programmierer?

Umfrage: Zur Welcher Familie gehört diese Distribution?

Falls die Frage für manche zu wage ist Spezialisiere ich es auf folgende Punkte:

  • Paketverwaltung,
  • Bequemlichkeit (Oberfläche/Ablauf ist für Benutzer ersichtlich?),
  • Stabilität fürs Programmieren,
  • Hilfe-Platformen bzw Community (sozusagen die Auffindung von Infos in Problemfällen).

Nur ein Beispiel:

Bei Ubuntu musste ich häufiger die Pakete installieren, abhängigen Pakete wurden erst beim kompilieren vermisst (Anzeige einer Fehlermeldung).

während ich bei Open Suse ein Paket installiere wird zum Teil überprüft ob es Abhängigkeiten gibt und optionale Paketen werden mit installiert (ich wurde davor gefragt ob ich das möchte). Was für mich letzten Endes Zeitersparnis bedeutet.

Ich würde mich auch freuen wenn die Teilnehmenden sagen mit welchen Systemen/Distributionen sie bisher gearbeitet haben.

Dazu hab ich die Notation gewählt:

(<geschätzte Arbeits-/Verwend Zeit>;< Paketverwaltungsbewertung>; ;<Stabilitätsbewertung>;)

0 ist schlecht, 9 ist sehr gut „-“ Zeichen ist enthalten einer Aussage.

  • Ubuntu (halbes Jahr;5;6;4;8)
  • Open Suse (Jahr;7;6;6;7)
  • Kali Linux (2h;-;4;1;4)
  • Knoppix (zu lange her, dass ich das nicht bewerten kann)

Bei Kali Linux musste ich schon nach 1 Stunde normalen Betriebs Aufhänger feststellen aufrufen der System Steuerung/Abmelden des Benutzers/anlegen eines Benutzers. Dabei muss noch erwähnt werden dass es von LiveUSB gebootet wurde

Unbuntu scheint einigermaßen gut zu sein was Oberfläche angeht und besitzt eine große Community in der eine hilfe-Plattform existiert die in vielerlei maßen detailreich ist.

OpenSuse Hilfe-Plattform ist etwas kleiner von Gefühl. Die Hilfe ist aber verwertbar und funktioniert meist auf Anhieb.

Hat jemand Erfahrungen mit Red-Hat Distributionen und kann diese Empfehlen wenn er in Vergleich dazu andere schon mal verwendet hatte?

Debian Distributionen 69%
Slackware Distributionen 23%
Red – Hat Distributionen 8%
Betriebssystem, Linux, Vergleich, programmieren, Distribution
Programmieren eines Vokabeltrainer in JAVA

Also ich habe folgende Aufgabe bekommen: ** Programmiere einen kleinen Vokabeltrainer. Er soll aus einer Textdatei deutsche und englische Vokabeln in zwei getrennte Listen einlesen und zu einer zufällig ausgegebenen Vokabel drei Lösungsmöglichkeiten zum Anklicken anzeigen.**

Mein Problem finde ich leider nicht so richtig. Habe eine Textdatei eröffnet und immer Deutsch englisch abwechselnd die Vokabeln eingetragen. z.B. gehen nächste Zeile go.

Das ist mein Quellcode:

package kapitel8;

import javax.swing.*;

import java.awt.*; import java.awt.event.*; import java.util.*; import java.io.*;

public class Aufgabe2 extends JFrame implements ActionListener, AdjustmentListener {

// Attribute
private JButton button1, button2;
private JLabel anzeige;
private JRadioButton[] option = new JRadioButton[3];
private ButtonGroup gruppe;
private Box top, bottom, middle, buttons, auswahl, bigBox;
final String dateiname = "Vokabeln.txt";
private int MAX = 0, nr = 0;
private ArrayList deutsch = new ArrayList();
private ArrayList englisch = new ArrayList();

// Vokabeln einlesen
public void readDiagnoseText() {
    try {
        BufferedReader Datei = new BufferedReader(new FileReader(dateiname));
        boolean dateiende = false;
        while (!dateiende) {
            String zeile = Datei.readLine();
            if (zeile == null)
                dateiende = true;
            else
                deutsch.add(zeile);
            zeile = Datei.readLine();
            if (zeile == null)
                dateiende = true;
            else
                englisch.add(zeile);
            nr++;
        }
        Datei.close();
    } catch (IOException x) {
        JOptionPane.showMessageDialog(null, "Kann keine Daten laden!");
        System.exit(0);
    }
    MAX = nr - 2;
}

// Buttons erzeugen und Buttons mit Ereignissen verknüpfen
public void createComponents() {
    button1 = new JButton("Neue Vokabel");
    button2 = new JButton("Prüfen");
    anzeige = new JLabel("Drücke auf Neue Vokabel");
    gruppe = new ButtonGroup();
    auswahl = Box.createVerticalBox();
    for (int i = 0; i < 3; i++) {
        option[i] = new JRadioButton("***");
        option[i].addActionListener(this);
        gruppe.add(option[i]);
        auswahl.add(option[i]);
    }
    top = Box.createHorizontalBox();
    bottom = Box.createHorizontalBox();
    middle = Box.createHorizontalBox();
    buttons = Box.createHorizontalBox();
    bigBox = Box.createVerticalBox();
    button1.addActionListener(this);
    button2.addActionListener(this);
}

// Die Form einstellen
public void setFormLayout() {
    button1.setFont(new Font("Arial", Font.BOLD, 20));
    button2.setFont(new Font("Arial", Font.BOLD, 20));
    anzeige.setFont(new Font("Arial", Font.CENTER_BASELINE, 25));
    for (int i = 0; i < 3; i++) {
        option[i].setFont(new Font("Arial", Font.ITALIC, 20));
    }
    top.setPreferredSize(new Dimension(430, 20));
    bottom.setPreferredSize(new Dimension(380, 10));
    middle.setPreferredSize(new Dimension(430, 10));
    auswahl.setPreferredSize(new Dimension(380, 100));
    bigBox.setPreferredSize(new Dimension(450, 200));
    bigBox.setBorder(BorderFactory.create
programmieren, Java
BATCH-Datei Befehle: "@ECHO OFF", "REM", "ECHO" usw. -- FUNKTIONIEREN NICHT

Ich schreibe gerade ein Backup-Script per Batch Datei um einige Dateien in einem rutsch in die Cloud zu sichern.

Das Script Ansich ist überhaupt kein Problem, die Batch Sprache verstehe ich super und seit ca. 20 Jahren. Offensichtlich habe ich da ein anderes Problem. Vielleicht könnt ihr es mal bei Euch testen und mir sagen was bei Euch passiert?

Wenn ich also eine Batch Datei schreibe, möchte ich z.B. nicht dass die Befehle(Befehlszeile) angezeigt werden, deswegen beginne ich meine Batch-Datei mit einem:

@ECHO OFF

Dann kommt der Rest vom Script usw.

Ich bekomme allerdings eine Fehlermeldung bei der Stapelverarbeitung, bevor der erste Befehl aufgeführt wird.

Beispiel:

@echo off
REM Dieses ist ein Test um zu zeigen das etwas nicht stimmt.
ECHO Dieses ist ein Test.
pause

Wenn ich dieses kleine, Script(Batchdatei) ausführe kommt folgende Fehlermeldung:

Das System kann den angegebenen Pfad nicht finden.
Drücken Sie eine beliebige Taste . . .

Sowohl beim Doppelklick auf die Batchdatei selbst, als auch bei der Eingabe in der CMD Befehlszeile.

Interessanter Weise wird weder das @ECHO OFF noch das REM oder Echo korrekt interpretiert. Ich habe eine vermutung, dass die Batch als falsches Format abgespeichert wurde.

Ich Habe verschiedene Editoren benutzt. Notepad in der Standart Einstellung, Notepad ++ nehme ich Standardmäßig.

Ich habe die Kodierungen überprüft also ANSI oder UTF8.

Wenn ich im CMD Befehlszeilenfenster den Befehl "@ECHO OFF" oder "REM" oder "ECHO mit BLABLA" eingebe, funktionieren sie; also außerhalb der Batch Datei.

Ich habe keine Verknüpfung angelegt oder falsche Parameter angegeben, ich starte die Batch direkt aus einem Verzeichnis Namens: D:\Backup. Es sind keine Sonderzeichen enthalten, weder im Namen noch in irgendwelchen Verzeichnissen oder sonstwas.

Also meine Vermutungen sind :

--Falsches Format der Batch Datei <- Warum auch immer --Virus oder Schadprogramm, welches versucht über die Kommandozeile Schadcode einzuschleusen.

Also letztes hänge ich mal den Anfang meines Batch-Scripts für das Backup mit an, damit ihr mal sehen könnt, was mir da angezeigt wird.

@echo off
REM ################################################
REM #          Backup und Sicherungsscript         #
REM #                                              #
REM #                                              #
REM ################################################
pause

Ich habe am Ende eine pause mit eingefügt, damit die Stapelverarbeitung anhält.

Das ist die Ausgabe der Datei im Prompt:

D:\Backup>´╗┐@echo off
Der Befehl "´╗┐@echo off" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.

Mein System:

AMD 3300T 8GB ATI HD 7850 usw, Windows 7 Deutsch/Home Premium - Original

Benutze Software: Windows 7, Notepad++, Notepad(Windows 7)

Ich hoffe ich konnte genug Informationen liefern, dass mir jemand helfen kann.

Vielen Dank grüße aus HH

Computer, Windows 7, programmieren, Batch, Script, Echo, stapelverarbeitung, R.E.M.

Meistgelesene Beiträge zum Thema Programmieren