Autor Beitrag
huy_beo
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 20:09 
hallo freunde.....
ich lerne gerade im Info über Datenstruktur,genau gesagt über Felder!!
und soll ne Programm schreiben, könnt ihr mir das helfen!!
Aufgabe :
Informiere Dich über die Matrizenmultiplikation
Erstelle ein Struktogramm für die Matrizenmultiplikation
Schreibe ein strukturiertes Programm welches 2 Matrizen gleicher Struktur multipliziert. Die Dimension der Matrizen sei maximal 8,8.

ich soll diese Programm mit array [....] of integer machen!!kann jemand mir helfen?

danke
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 10.10.07 20:14 
Hallo und :welcome:!

Vorweg: Deine Hausaufgaben wir Dir hier niemand machen. Aber: Wir helfen Dir gerne dabei, sie selber zu machen.

Wie sehen denn Deine Ansätze bisher aus und wo kommst Du nicht weiter?

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 20:28 
der lehrer hat gesagt man soll es mit for schleifen machen!aba ich weißt nicht wie....
ich habe so gemacht..und es läuft aba auch...aber ich weißt nicht ob das mit array oder nicht?

Quelle:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, //Variants,
  Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;

type

  Paul=array[1..8,1..8of integer;

  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    StringGrid2: TStringGrid;
    StringGrid3: TStringGrid;
    Label1: TLabel;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Eingabe(var x,y,c:integer);
    procedure Button1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Eingabe(var x,y,c:integer);
var
 i1, i2, i3, iErgebnis: integer;
begin
  for i1 := 0 to 7 do
  for i2 := 0 to 7 do
  begin
    iErgebnis := 0;
    for i3 := 0 to 7 do
    begin
      iErgebnis := iErgebnis +
        strtoint(stringgrid1.cells[i1,i3])*strtoint(stringgrid2.cells[i3,i2]);
    end;
    stringgrid3.cells[i1, i2]:=inttostr(iErgebnis);
  end;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  stringgrid3.visible:=false;
end;


procedure TForm1.FormShow(Sender: TObject);

var
 i1, i2: integer;
begin
  for i1 := 0 to 7 do
  for i2 := 0 to 7 do
  begin
    stringgrid1.cells[i1, i2]:='1';
    stringgrid2.cells[i1, i2]:='1';
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);

var
 i1, i2, i3, iErgebnis: integer;
begin
  for i1 := 0 to 7 do
  for i2 := 0 to 7 do
  begin
    iErgebnis := 0;
    for i3 := 0 to 7 do
    begin
      try
        iErgebnis := iErgebnis +
         StrToInt(stringgrid1.cells[i1,i3])*StrToInt(stringgrid2.cells[i3,i2]);
      except
        begin

          MessageDlg('In alle Zeilen von Grid1 und Grid2 sollen Zahlen sein.',
            mtError, [mbOk], 0);
          stringgrid3.Visible := false;
          exit;
        end;
      end;
    end;
    stringgrid3.cells[i1, i2]:=inttostr(iErgebnis);
  end;
  stringgrid3.Visible:=true;
end;


end.


Moderiert von user profile iconChristian S.: Delphi-Tags hinzugefügt
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 10.10.07 20:31 
Hallo!

Du kannst Dein Array (vom Typ "Paul" :lol:) praktisch so benutzen, wie Du StringGrid.Cells benutzt. Du musst vorher nur noch eine Varibale diesen Typs deklarieren. Siehe auch hier: www.christian-stelzm...oaded/#_Toc166831058

Grüße
Christian

//edit: Ach ja, Unterschied ist: die Indizes laufen nciht von 0 bis 7, sondern von 1 bis 8 (weil Paul so deklariert ist). Und Du kannst Dir das IntToStr / StrToInt sparen, weil ja alle Elemente Integer sind.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 20:36 
danke ich werde das mal versuchen!!!wenn nicht klapp dann muss du mir aba helfen! :) :) :) :) :) :) :) :) :D :D :D :D :D :D :D
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 20:47 
kannst du das mit den typ array da vorzeigen?ich verstehe das nicht so ganz! :D :D :D :D :D :D :D
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 10.10.07 20:56 
Was soll ich zeigen? :gruebel:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 21:00 
wie man array hier benutzt und was ich noch deklarieren muss! :D :D :D :D
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 10.10.07 21:02 
Wie man ein Array deklariert steht in dem Link, den ich gepostet habe. Ein bisschen mehr Eigeninitiative bitte! :mahn:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 21:11 
ich weißt,dass man Eigeninitiative braucht...aber ich setze schon tage lang mit den ding hier schon...und habe bald kein geduld mehr!außerdem ich muss noch vieles lernen!huhuhuuhuhuhuhu
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 10.10.07 21:15 
Und was an alle dem hindert Dich daran, auf den Link zu klicken und zu lesen :gruebel:

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 21:18 
ich lerne grad Geschichte...morgen schreibe ich klausur auf Abiniveau!!!300 min lang!!!!!!da kann ich nicht auf den text da konzentrieren!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 10.10.07 21:24 
Dann kann ich Dir auch nicht helfen. Ich mache Dir nicht Deine Hausaufgaben.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
huy_beo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 10.10.07 21:25 
ja ist egal...trotzdem danke
Grenzgaenger
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 12.10.07 20:28 
mal hausaufgaben mach ... (da keine programmiersprache angegeben, wird fortran angenommen)

A = M1 * M2 strukturgramm ist genauso simple. wobei A = gesuchte matrix, M1 = 1 Matrix und M2 = zweite Matrix