WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Binärzahlen

 

lebowski
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 22.10.11
Wohnort: Schweiz
Version: ---
     Beitrag Verfasst am: 20.11.2011, 16:56     Titel: Binärzahlen
  Antworten mit Zitat      
Hallo Zusammen

Was ich bis jetzt gemacht habe ist eine Funktion implementiert, welche einen vektor x überprüft, ob dieser eine Binärzahl ist, oder nicht.

Code:
function [ binary ] = isbinary( x )
%ISBINARY Überprüft ob ein übergebener Vektor die Repräsentation einer
%Binärzahl ist
%   Detailed explanation goes here

for i=1:length(x)
   if x(i)>1
       display(0)
   else
       display(1)
   end
end
end


Nun möchte ich eine neue Funktion z.B. andreas(x,k) programmieren, die das Resultat der Multiplikation von y=x*x^k als Binärzahl zurückgibt. Gibt es da einen Befehl für y? Bis jetzt sieht mein file folgendermassen aus:
Code:
function [ product ] = shift( x,k )
%SHIFT gibt Ergebnis von x*2^k als Binärzahl zurück
%   Detailed explanation goes here

for i=1:length(x)
    y=x*2^k
end
end


danke schonmal, bis bald wieder mal
Private Nachricht senden Benutzer-Profile anzeigen


eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 20.11.2011, 17:28     Titel:
  Antworten mit Zitat      
Gibt es einen Befehl für y? Ist das die Frage? Entschuldigung, aber ich verstehe gerade nur Bahnhof. Auch was du da programmiert hast ist vollkommen unschlüssig für mich. Bitte die Frage etwas präziser stellen.
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 20.11.2011, 22:27     Titel: Re: Binärzahlen
  Antworten mit Zitat      
Hallo lebowski,

Deine Funktion isbinary läuft nicht. Was soll sie denn leisten?
Kannst Du ein paar numerische Beispiele geben, die erklären, was die Funktionen machen sollen?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
lebowski
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 22.10.11
Wohnort: Schweiz
Version: ---
     Beitrag Verfasst am: 21.11.2011, 17:27     Titel:
  Antworten mit Zitat      
Code:
function [ binary ] = isbinary( x )
%ISBINARY Überprüft ob ein übergebener Vektor die Repräsentation einer
%Binärzahl ist
%   Detailed explanation goes here

for i=1:length(x)
   if x(i)>1
       display(true)
   else
       display(false)
   end
end
end


z.B. isbinary([1 4 5 3 0 1]) zeigt mir an, ob der Vektor eine Repräsentation einer Binärzahl ist oder nicht. im command window gibt mir matlab dann true zurück für die Komponenten des Vektors, welche 1 oder 0 sind, da diese in Binärdarstellung vorkommen, und false für Komponenten ~=1 oder 0. Leider weiss ich nicht wie ich matlab sagen soll, dass es true zurückgiebt, nur falls der ganze vektor eine Binärdarstellung ist. Könnt ihr hier weiterhelfen?

Danach geht es darum eine neue FUnktion z.B. andreas(x,k) programmieren, die das Resultat der Multiplikation von y=x*2^k als Binärzahl zurückgibt. Könnt ihr mir da helfen? (sorry habe es vorhin falsch geschrieben)

Aufgabe 1 hat eigentlich nichts mit 2 zu tun.

es grüsst Andy
Private Nachricht senden Benutzer-Profile anzeigen
 
Kevin
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 93
Anmeldedatum: 18.08.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.11.2011, 19:33     Titel:
  Antworten mit Zitat      
Hallo,
ich tu mir schwer zu verstehen, was die Funktion für einen Sinn haben soll. Wie kann man denn ein array unbekannten Typs über eine Schnittstelle weitergeben? Und vor allem wo kommen Daten mit unbekanntem Typ her?

Deine Funktion Prüft übrigens nicht, ob der Wert binär ist oder nicht, sondern nur ob er EINS ist oder nicht.
Gruß
Kevin
_________________

1000 Buchstaben? Warum nur 6?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 21.11.2011, 22:45     Titel:
  Antworten mit Zitat      
Hallo lebowski,

Was genau meinst Du mit "Binärzahl"? Zur Zeit überüprüfst Du, ob alle Werte größer sind als 1. Vielleicht meinst Du:
Code:
function binary = isbinary(x)
binary = all(x(:) == 1 || x(:) == 1);
end


Zitat:
...Resultat der Multiplikation von y=x*2^k als Binärzahl zurückgibt.

Dazu müsstest Du zunächst den Begriff "Binärzahl" definieren.

Suchst Du vielleicht nach DEC2BIN?

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.