Keresés


Toplista

Toplista
  • betöltés...

Magántanár kereső

Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!

Egy programot kéne irjak lécci segítsetek!!!

269
Csatoltam képet.
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Középiskola / Informatika

Válaszok

1
Lévén semmi kikötés nem volt a programozási nyelvre vonatkozóan, a kedvencemet használtam: Ruby.

# 1.Beolvasunk fájlból két természetes számot egy n és m változóba.

allomany = File.open 'adat.txt'
n = allomany.readline.to_i
m = allomany.readline.to_i

# 2.Ezt követve beolvasunk n*m darab egész érteket egy n*m méretú mátrixba, ugyancsak fájlból.

matrix = []
n.times {|i| matrix[i] = []; m.times {|j| matrix[i][j] = allomany.readline.to_i } }

# 3.Irassuk ki a beolvasott mátrixot.

matrix.each {|sor| p sor }

# 4.Ellenőrizzük le, hogy a jelenlegi mátrix négyzetes mátrix-e. Ha nem bovitsük ki a sorok / oszlopok számát és töltsük fel tetszőleges értékekkel. Ha igen, akkor abban az esetben folytatódik a program.

if n < m then
n.upto(m - 1) {|i| matrix[i] = []; m.times {|j| matrix[i][j] = rand -100..100 } }
n = m
elsif n > m then
m.upto(n - 1) {|i| n.times {|j| matrix[j][i] = rand -100..100 } }
end

# 5.Irassuk ki a mátrix föátlóján levő elemeket.

n.times {|i| p matrix[i][i] }

# 6.İrassuk ki a mátrix föátló feletti értekéinek összegének és a főátló alatti értékek szorzatának különbségét.

felett = 0
alatt = 1
n.times {|i| n.times {|j| felett += matrix[i][j] if i < j; alatt *= matrix[i][j] if i > j } }
p felett - alatt

# 7.İrassuk ki, hogy a mellek átlón 0-tol 9-ig hanyszor fordulnak elő a számjegyek.

darab_lista = Array.new 10, 0
n.times {|i| szam = matrix[i][-i - 1].abs; loop { darab_lista[szam % 10] += 1; break if (szam /= 10) == 0 } }
darab_lista.each_with_index {|darab, szam| puts "#{ szam }: #{ darab } darab" }
0