Sunteți pe pagina 1din 25

TUGAS

ALGORITMA PEMOGRAMAN 4

Nama

: Selfinia

Nim/Bp

: 1301402 / 2013

Prodi

: Matematika

1. Tuliskan Program determinan matriks 3X3


Flowchart

Pseudo Code
program determinan_matriks;
deklarasi
var i,j,dET2: integer;
a:array[1..100,1..100] of INTEGER;
Algoritma
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM DETERMINAN MATRIKS 3x3');
Writeln ('====================================');
writeln;
writeln('Silahkan Input Elemen dari Matriks Anda ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to 3 do
begin
for j:=1 to 3 do
begin
write(a[i,j]:5);
end;
Writeln;
end;
Writeln;
det2 := (A[1,1]*((a[2,2]*a[3,3])-(a[2,3]*a[3,2])))(a[2,1]*((a[1,2]*a[3,3])-(a[1,3]*a[3,2])))+(a[3,1]*((a[1,2]*a[2,3])(a[1,3]-a[2,2])));

Writeln ('Determinan Matriks Anda Yaitu :',' ',det2);


Writeln ('---------------SELESAI ^_^---------------');
readln;

program determinan_matriks;

Pascal

uses crt;
var i,j,dET2: integer;
a:array[1..100,1..100] of INTEGER;
begin
clrscr;
Writeln
('====================================');
Writeln
('==========SELFINIA/130140===========');
Writeln (' PROGRAM DETERMINAN MATRIKS
3x3');
Writeln
('====================================');
writeln;
writeln('Silahkan Input Elemen dari
Matriks Anda ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to 3 do
begin
for j:=1 to 3 do
begin
write(a[i,j]:5);
end;
Writeln;
end;
Writeln;
det2 := (A[1,1]*((a[2,2]*a[3,3])(a[2,3]*a[3,2])))(a[2,1]*((a[1,2]*a[3,3])(a[1,3]*a[3,2])))+
(a[3,1]*((a[1,2]*a[2,3])-(a[1,3]a[2,2])));
Writeln ('Determinan Matriks Anda
Yaitu :',' ',det2);
Writeln ('---------------SELESAI
^_^---------------');
readln;
END.

2. Program Mencari
Inver 2X2
Flowchart

Pseudo code

program determinan_matriks2;
Deklaarasi
var i,j,det,int: integer;
deter : real;
a:array[1..100,1..100] of INTEGER;
b:array[1..100,1..100] of real;
Algoritma
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM DETERMINAN MATRIKS 3x3');
Writeln ('====================================');
writeln;
writeln('Silahkan Input Elemen dari Matriks Anda ');

for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write(a[i,j]:5);
end;
Writeln;
end;
Writeln;
writeln;
det:= (a[1,1]*a[2,2]-a[1,2]*a[2,1]);
writeln('determinan matriks A adalah');
writeln (det);
writeln;
writeln ('invers matriks A adalah');
for i:=2 downto 1 do
begin
deter:=1/det;
for j:=2 downto 1 do
begin b[1,2]:= -a[1,2]*deter; b[1,1]:=a[1,1]*deter;b[2,1]:=a[2,1]*deter;b[2,2]:=a[2,2]*deter;
write (b[i,j]:8:1);end;
writeln;
end;
readln;
Writeln ('---------------SELESAI ^_^---------------');

readln;
Program Pascal

program determinan_matriks2;
uses crt;
var i,j,det,int: integer;
deter : real;
a:array[1..100,1..100] of INTEGER;
b:array[1..100,1..100] of real;
begin
clrscr;
Writeln ('====================================');

Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM DETERMINAN MATRIKS 3x3');
Writeln ('====================================');
writeln;
writeln('Silahkan Input Elemen dari Matriks Anda ');
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write(a[i,j]:5);
end;
Writeln;
end;
Writeln;
writeln;
det:= (a[1,1]*a[2,2]-a[1,2]*a[2,1]);
writeln('determinan matriks A adalah');
writeln (det);
writeln;
writeln ('invers matriks A adalah');
for i:=2 downto 1 do
begin
deter:=1/det;
for j:=2 downto 1 do
begin b[1,2]:= -a[1,2]*deter; b[1,1]:=a[1,1]*deter;b[2,1]:=a[2,1]*deter;b[2,2]:=a[2,2]*deter;
write (b[i,j]:8:1);end;
writeln;
end;
readln;
Writeln ('---------------SELESAI ^_^---------------');
readln;
END.

Output

3. Program Matriks A X B
Flowchart

Pseudo Code

program matrik_3;
Deklarasi
var i,j,k,l: integer;
deter : real;

a:array[1..100,1..100] of INTEGER;
Algoritma
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln ('
PROGRAM MATRIKS AxB
');
Writeln ('====================================');
writeln;
Write('Masukkan Jumlah baris dari Matriks anda :','
');Readln(k);
Write('Masukkan Jumlah Kolom dari matriks anda :','
');Readln(l);
writeln('Silahkan Input Elemen dari Matriks Anda ');
for i:=1 to k do
begin
for j:=1 to l do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to k do
begin
for j:=1 to l do
begin
write(a[i,j]:5);
end;
Writeln;
end;
Writeln;
writeln;
readln;
Writeln ('---------------SELESAI ^_^---------------');

readln;
Program Pascal
program matrik_3;
uses crt;
var i,j,k,l: integer;

deter : real;
a:array[1..100,1..100] of INTEGER;
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln ('
PROGRAM MATRIKS AxB
');
Writeln ('====================================');
writeln;
Write('Masukkan Jumlah baris dari Matriks anda :','
');Readln(k);
Write('Masukkan Jumlah Kolom dari matriks anda :','
');Readln(l);
writeln('Silahkan Input Elemen dari Matriks Anda ');
for i:=1 to k do
begin
for j:=1 to l do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to k do
begin
for j:=1 to l do
begin
write(a[i,j]:5);
end;
Writeln;
end;
Writeln;
writeln;
readln;
Writeln ('---------------SELESAI ^_^---------------');
readln;
END.
Output

4. Program Adjoint
Flow Chart

Pseudo code
program matrik_adjoint;
Deklarasi
var i,j: integer;
adj:array[1..100,1..100] of real;
a:array[1..100,1..100] of real;
Algoritma
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln ('
PROGRAM ADJOINT MATRIKS 2X2
');
Writeln ('====================================');
writeln;
writeln('Silahkan Input Elemen dari Matriks Anda ');
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write ('Elemen A(',I,',',J,'):','');
READLN (a[I,J]);
END;
END;
Writeln;

WRITELN('Bentuk Matriks Anda Yaitu :');


Writeln;
For i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write(a[i,j]:5:0);
end;
Writeln;
end;
Writeln;
writeln;
adj[1,1] := a[2,2];
adj[1,2] := a[1,2] * -1;
adj[2,1] := a[2,1] * -1;
adj[2,2] := a[1,1];
Writeln ('Adjoint dari matriks anda adalah:',' ');
Writeln;
for i := 1 to 2 do begin
write('|');
for j := 1 to 2 do begin
write(' ',adj[i,j]:0:0,' ');
if j = 2 then write('|');
end;
writeln;
end;
writeln;
readln;

Program Pascal
program matrik_adjoint;
uses crt;
var i,j: integer;
adj:array[1..100,1..100] of real;
a:array[1..100,1..100] of real;
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln ('
PROGRAM ADJOINT MATRIKS 2X2
');
Writeln ('====================================');
writeln;
writeln('Silahkan Input Elemen dari Matriks Anda ');
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write ('Elemen A(',I,',',J,'):','');

READLN (a[I,J]);
END;
END;
Writeln;
WRITELN('Bentuk Matriks Anda Yaitu :');
Writeln;
For i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write(a[i,j]:5:0);
end;
Writeln;
end;
Writeln;
writeln;
adj[1,1] := a[2,2];
adj[1,2] := a[1,2] * -1;
adj[2,1] := a[2,1] * -1;
adj[2,2] := a[1,1];
Writeln ('Adjoint dari matriks anda adalah:',' ');
Writeln;
for i := 1 to 2 do begin
write('|');
for j := 1 to 2 do begin
write(' ',adj[i,j]:0:0,' ');
if j = 2 then write('|');
end;
writeln;
end;
writeln;
readln;
end.

Output

5. Program Operasi Penjumlahan dan Pengurangan Matriks

Flowchart
Pseudo Code
program matriks;
Deklarasi
var
i,j,k
A,B,C
pilih

:integer;
:array[1..3,1..3] of integer;
:char;

procedure tulis_matriks;
begin
clrscr;
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('Masukkan Matriks A [',i,'][',j,'] :
');
readln(A[i,j]);
end;
writeln;
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('Masukkan Matriks B [',i,'][',j,'] :
');
readln(B[i,j]);
end;
end;
procedure penjumlahan_matriks;
begin
for i:=1 to 3 do
for j:=1 to 3 do
C[i,j]:=A[i,j]+B[i,j];
end;
procedure pengurangan_matriks;
begin
for i:=1 to 3 do
for j:=1 to 3 do
C[i,j]:=A[i,j]-B[i,j];
end;
procedure tampilkan_matriks;
begin
clrscr;
writeln('Matrik A : ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(' ',A[i,j],' ');
writeln;
end;

writeln;
writeln('Matrik B : ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(' ',B[i,j],' ');
writeln;
end;
writeln;
writeln('Matrik C (Hasil Dari Operasi Matriks yang
anda pilih) : ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(' ',C[i,j],' ');
writeln;
end;
readln;
end;
procedure menu;
begin
repeat
clrscr;
writeln('>======================================<');
writeln('>
Program Operasi Matriks
<');
writeln(')
SELFINIA/1301402
(');
writeln('>-------------------------------------<');
writeln('>1.Penjumlahan Matriks
<');
writeln('>2.Pengurangan Matriks
<');
writeln('>X.Keluar
<');
writeln('>-------------------------------------<');
writeln('>Masukkan Pilihan :
<');
writeln('>======================================<');
gotoxy(21,9);readln(pilih);
case pilih of
'1':begin
tulis_matriks;
penjumlahan_matriks;
gotoxy(10,1);writeln('Penjumlahan Matriks');
tampilkan_matriks;
end;
'2':begin
tulis_matriks;

pengurangan_matriks;
gotoxy(10,1);writeln('Pengurangan Matriks');
tampilkan_matriks;
end;
end;
until (pilih='X') or(pilih='x');
end;
begin
menu;

Program Pascal
program matriks;
uses crt;
var
i,j,k
A,B,C
pilih

:integer;
:array[1..3,1..3] of integer;
:char;

procedure tulis_matriks;
begin
clrscr;
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('Masukkan Matriks A [',i,'][',j,'] :
');
readln(A[i,j]);
end;
writeln;
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('Masukkan Matriks B [',i,'][',j,'] :
');
readln(B[i,j]);
end;
end;
procedure penjumlahan_matriks;
begin
for i:=1 to 3 do
for j:=1 to 3 do
C[i,j]:=A[i,j]+B[i,j];
end;
procedure pengurangan_matriks;
begin
for i:=1 to 3 do
for j:=1 to 3 do
C[i,j]:=A[i,j]-B[i,j];
end;

procedure tampilkan_matriks;
begin
clrscr;
writeln('Matrik A : ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(' ',A[i,j],' ');
writeln;
end;
writeln;
writeln('Matrik B : ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(' ',B[i,j],' ');
writeln;
end;
writeln;
writeln('Matrik C (Hasil Dari Operasi Matriks yang
anda pilih) : ');
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(' ',C[i,j],' ');
writeln;
end;
readln;
end;
procedure menu;
begin
repeat
clrscr;
writeln('>======================================<');
writeln('>
Program Operasi Matriks
<');
writeln(')
SELFINIA/1301402
(');
writeln('>-------------------------------------<');
writeln('>1.Penjumlahan Matriks
<');
writeln('>2.Pengurangan Matriks
<');
writeln('>X.Keluar
<');
writeln('>-------------------------------------<');
writeln('>Masukkan Pilihan :
<');
writeln('>======================================<');

gotoxy(21,9);readln(pilih);
case pilih of
'1':begin
tulis_matriks;
penjumlahan_matriks;
gotoxy(10,1);writeln('Penjumlahan Matriks');
tampilkan_matriks;
end;
'2':begin
tulis_matriks;
pengurangan_matriks;
gotoxy(10,1);writeln('Pengurangan Matriks');
tampilkan_matriks;
end;
end;
until (pilih='X') or(pilih='x');
end;

begin
menu;
end.
Output

6. Program Nama Mahasiswa


Flowchart
Pseudo Code

program Nama_Mahasiswa;
Deklarasi
var i,n: integer;
a:array[1..100] of string;
Algoritma
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM INPUT DATA MAHASISWA');
Writeln ('====================================');

writeln;
write('Silahkan Input Jumlah Mahasiswa yang Akan
Diinputkan :');Readln(n);
for i:=1 to n do
begin
write ('Data(',I,'):',' ');
READLN (a[I]);
END;
Writeln;
Writeln ('---------------SELESAI ^_^---------------');
readln;

Program Pascal

program Nama_Mahasiswa;
uses crt;
var i,n: integer;
a:array[1..100] of string;
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM INPUT DATA MAHASISWA');
Writeln ('====================================');
writeln;
write('Silahkan Input Jumlah Mahasiswa yang Akan
Diinputkan :');Readln(n);
for i:=1 to n do
begin
write ('Data(',I,'):',' ');
READLN (a[I]);
END;
Writeln;
Writeln ('---------------SELESAI ^_^---------------');
readln;
END.

Output

7. Program Nilai Rata-Rata,Standar Deviasi


Flow Chart
Pseudo Code
Program Hitung_Simpangan_Baku;
Deklarasi
Var X,N,I:Byte;
Akar,Jum,Rata,Sd,K,Y,Sigma,Pangkat:Real;
Data:Array[1..30] of byte;
Function Pengurangan(A,I:Byte):Integer;
Algoritma
Begin
Pengurangan:= A-I ;
end;
Procedure NilaiData;
Begin
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM STANDAR DEVIASI,RATA-RATA');
Writeln ('====================================');
Write ('Berapa Banyaknya Data Nilai= ');Readln(X);
For N:=1 to x do
Begin
Write('Data ke-',N,'=');Readln(Data[N]);
end;
end;
Procedure RataRata;

Begin
Jum:=0;
For N:=1 to X do
Begin
Jum:=Jum + Data[N] ;
Rata:= Jum / X;
end;
end;
Procedure PangkatSigma;
Begin
SIGMA:=0;
For N:= 1 to X do
Begin
Pangkat:=0;
K:= Data[N]-Rata;
Pangkat:= SQR (K);
Sigma:= Sigma+Pangkat;
end;
end;
Procedure TampilHasil;
Begin
For N:= 1 to X Do
Begin
Writeln ('Data Nilai ke- ',N,'=',Data[N]);
end;
end;
Begin
clrscr;
Sigma:=0;
Rata:=0;
Writeln ('>> Menghitung Simpangan Baku <<');
NilaiData;
RataRata;
PangkatSigma;
I:=1;
Y:=Pengurangan(X,I);
Akar:=Sigma/Y ;
Sd:= SQRT (Akar);
Clrscr;
Writeln ('Hasil Penghitungan Simpangan Baku');
TampilHasil;
Writeln ('Banyaknya Data Nilai =',X);
Writeln ('Nilai Rata-ratanya = ',Rata:4:2);
Writeln ('Simpangan Bakunya Adalah = ',Sd:4:2);
Readln;

Program Pascal
Program Hitung_Simpangan_Baku;

Uses Crt;
Var X,N,I:Byte;
Akar,Jum,Rata,Sd,K,Y,Sigma,Pangkat:Real;
Data:Array[1..30] of byte;
Function Pengurangan(A,I:Byte):Integer;
Begin
Pengurangan:= A-I ;
end;
Procedure NilaiData;
Begin
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM STANDAR DEVIASI,RATA-RATA');
Writeln ('====================================');
Write ('Berapa Banyaknya Data Nilai= ');Readln(X);
For N:=1 to x do
Begin
Write('Data ke-',N,'=');Readln(Data[N]);
end;
end;
Procedure RataRata;
Begin
Jum:=0;
For N:=1 to X do
Begin
Jum:=Jum + Data[N] ;
Rata:= Jum / X;
end;
end;
Procedure PangkatSigma;
Begin
SIGMA:=0;
For N:= 1 to X do
Begin
Pangkat:=0;
K:= Data[N]-Rata;
Pangkat:= SQR (K);
Sigma:= Sigma+Pangkat;
end;
end;
Procedure TampilHasil;
Begin
For N:= 1 to X Do
Begin
Writeln ('Data Nilai ke- ',N,'=',Data[N]);
end;
end;
Begin
clrscr;

Sigma:=0;
Rata:=0;
Writeln ('>> Menghitung Simpangan Baku <<');
NilaiData;
RataRata;
PangkatSigma;
I:=1;
Y:=Pengurangan(X,I);
Akar:=Sigma/Y ;
Sd:= SQRT (Akar);
Clrscr;
Writeln ('Hasil Penghitungan Simpangan Baku');
TampilHasil;
Writeln ('Banyaknya Data Nilai =',X);
Writeln ('Nilai Rata-ratanya = ',Rata:4:2);
Writeln ('Simpangan Bakunya Adalah = ',Sd:4:2);
Readln;
end.

Output

8. Tuliskan Program Kuartil


Flowchart

Pseudo Code

program quartil;
Deklarasi
type
arrint = array [1..100] of real;
procedure tukar(var a,b : real);
var Bantu : real;
begin
Bantu := a;
a := b;
b := Bantu;
end;
procedure buble(var x:arrint ; n: integer);
var i,j : integer;
begin
for i:=1 to n-1 do
for j:=1 to n-i do
if x[j] > x[j+1] then
tukar(x[j],x[j+1]);
end;
procedure ganjil(var x:arrint ; n: integer);
var
q1,q2,q3:integer;
begin
q1 :=(n+1) div 4;
q2 :=(n+1) div 2;
q3 :=(3*(n+1)) div 4;
write('quartil 1 dari data tersebut adalah : ',x[q1]:2:2);writeln;
write('quartil 2 dari data tersebut adalah : ',x[q2]:2:2);writeln;
write('quartil 3 dari data tersebut adalah : ',x[q3]:2:2);writeln;
end;
procedure genap(var x:arrint ; n: integer);
var
q1,q2,q3:integer;
median:real;
begin
q1 :=(n+2) div 4;
q2 :=n div 2;
median:= ((x[q2])+(x[q2+1])) / 2;
q3 :=(3*n+2) div 4;
write('quartil 1 dari data tersebut adalah : ',x[q1]:2:2);writeln;
write('quartil 2 dari data tersebut adalah : ',median:2:2);writeln;
write('quartil 3 dari data tersebut adalah : ',x[q3]:2:2);writeln;
end;
var
n,i : integer;
data : arrint;
{PROGRAM UTAMA}
Algoritma
begin
clrscr;
Writeln ('====================================');
Writeln ('==========SELFINIA/130140===========');
Writeln (' PROGRAM KUARTIL BEBERAPA DATA
');
Writeln ('====================================');

program quartil;
uses crt;
type
arrint = array [1..100] of real;
procedure tukar(var a,b : real);
var Bantufor
: real;
i:= 1 to 65 do
begin
begin
Bantu := write('data
a;
ke-',i,' = ');readln(data[i]);
a := b; end;
b := Bantu;
for i:=1 to n do
end;
write(data[i]:0:0,', ');
procedurewriteln;
buble(var x:arrint ; n:
integer);if n mod 2 = 1 then
var i,j :ganjil(data,n)
integer;
begin else
for i:=1
to n-1 do
genap(data,n);
for j:=1
to n-i('---------------SELESAI
do
Writeln
^_^---------------');
if x[j] > x[j+1] then
tukar(x[j],x[j+1]);
readln;
end;
procedurereadln;
ganjil(var x:arrint ; n:
integer);
var
Pascal
q1,q2,q3:integer;
begin
q1 :=(n+1) div 4;
q2 :=(n+1) div 2;
q3 :=(3*(n+1)) div 4;
write('quartil 1 dari data tersebut
adalah : ',x[q1]:2:2);writeln;
write('quartil 2 dari data tersebut
adalah : ',x[q2]:2:2);writeln;
write('quartil 3 dari data tersebut
adalah : ',x[q3]:2:2);writeln;
end;
procedure genap(var x:arrint ; n:
integer);
var
q1,q2,q3:integer;
median:real;
begin
q1 :=(n+2) div 4;
q2 :=n div 2;
median:= ((x[q2])+(x[q2+1])) / 2;
q3 :=(3*n+2) div 4;
write('quartil 1 dari data tersebut
adalah : ',x[q1]:2:2);writeln;
write('quartil 2 dari data tersebut
adalah : ',median:2:2);writeln;
write('quartil 3 dari data tersebut
adalah : ',x[q3]:2:2);writeln;
end;
var
n,i : integer;
data : arrint;
{PROGRAM UTAMA}
begin
clrscr;
Writeln
('====================================');
Writeln
('==========SELFINIA/130140===========');
Output
Writeln (' PROGRAM KUARTIL BEBERAPA DATA
');
Writeln
('====================================');
for i:= 1 to 65 do

S-ar putea să vă placă și