CafedeMinou
?>

Вдвумерной матрице a(n, m), состоящей из произвольных чисел, определить номера столбцов, в которых среднее арифметическое его элементов меньше чем среднее арифметическое элементов массива.

Информатика

Ответы

Voshchula David393
Var       i, j, n, m: integer;       s, t: real;       a: array[1..100, 1..100] of integer; begin       randomize;             readln(n, m);             for i : = 1 to n do       begin               for j : = 1 to m do               begin                       a[i, j] : = random(100);                       s : = s + a[i, j];                       write(a[i, j]: 3, ' ')               end;               writeln()       end;             s : = s / n / m;             writeln();       for j : = 1 to m do       begin               t : = 0;               for i : = 1 to n do                       t : = t + a[i, j];                                     if t / n < s then                       write(j, ', ')       end end.
olyafom1234
Var     i,j,n,m: integer;     s: real;     a: array[0..1000,1..1000] of real; begin readln(n,m); randomize; s: =0; for i: =1 to n do   begin     for j: =1 to m do           begin           a[i,j]: =random(10);           s: =s+a[i,j];           write(a[i,j],' ')           end;       writeln   end; s: =s/n/m; writeln; for j: =1 to m do   begin      for i: =1 to n do  a[0,j]: =a[0,j]+a[i,j];   a[0,j]: =a[0,j]/n;   if a[0,j]< s then write(j,' ')   end end.
vallihhh
Можно поступить следующим образом: создаем multimap. читаем слова из словаря, для каждого слова находим все , вставляем их в multimap в качестве ключа, значение можно ставить любое (например, (int) 1). после этого в цикле читаем слова-образцы и выводим значение count от каждого слова-образца.  программа будет иметь примерно такую структуру: multimap< string, > subprefixes input n n times:     input s     for j = 0..size of s:         if s[..j] is subprefix of s:             subprefixes.insert(pair< string, > (s[..j], input m m times:     input s     print subprefixes.count(s) остался вопрос, как определять, является ли s[..j] .  конечно, можно это делать наивно: пройти циклом для всех возможных длин подстрок j и проверить, правда ли, что s[0] = s[s.size() - j - 1], s[1] = s[s.size() - как можно ускорить всё это? 1) выберем какое-нибудь достаточно большое (по сравнению с символов)  простое число x, например, x = 1009. вычислим для строки s все хеши по формуле   для n = 1..len s  (это делается за линейное время относительно len s, если предпросчитать все степени x от нулевой до 50) теперь если у строки s длины k есть длины j, то обязательно  – проверить это быстрее, чем ходить циклом. 2) необязательно хранить в multimap-е подстроки, это дорого и по времени и по памяти. можно хранить хеши. 3) можно вместо одного multimap-а создать 50 multimap-ов, в каждом хранить только одной длины. получаем примерно такое: pow = new long long[51] pow[0] = 1 for i = 1..50:     pow[i] = x * pow[i - 1] suprefixes = new multimap< long long, > [51] input n n times:     input s     h = hashes(s)     k = len s     for j = 1..k:           if h[j] * pow[k - j] == h[k] - h[k - j - 1]:               suprefixes[j].insert(pair(h[j], input m m times:     input s     print puprefixes[len s].count(hash(s)) в принципе, для такого решения multimap не нужен, достаточно иметь map, и хранить для каждого ключа количество вхождений. это можно делать и для multimap.
Bordo

from tkinter import *

from tkinter import messagebox

from tkinter import ttk

import math

import sys

root = Tk()

root.title("Конвертер валют: перевод рублей в $ и евро")

bttn_list = [

"7", "8", "9","C", "=","Exit", "+",

"4", "5", "6","-","*", "/", ".",

"1", "2", "3",

"(", ")","EUR","USD" ]

r = 1

c = 0

for i in bttn_list:

rel = ""

cmd=lambda x=i: calc(x)

ttk.Button(root, text=i, command = cmd, width = 9).grid(row=r, column = c)

c += 1

if c > 6:

c = 0

r += 1

calc_entry = Entry(root, width = 33)

calc_entry.grid(row=0, column=0, columnspan=5)

#логика калькулятора

def calc(key):

global memory

if key == "=":

#исключение написания слов

str1 = "-+0123456789.*/)("

if calc_entry.get()[0] not in str1:

calc_entry.insert(END, "First symbol is not number!")

messagebox.showerror("Error!", "You did not enter the number!")

#исчисления

try:

result = eval(calc_entry.get())

calc_entry.insert(END, "=" + str(result))

except:

calc_entry.insert(END, "Error!")

messagebox.showerror("Error!", "Check the correctness of data")

#очищение поля ввода

elif key == "C":

calc_entry.delete(0, END)

elif key == "±":

if "=" in calc_entry.get():

calc_entry.delete(0, END)

try:

if calc_entry.get()[0] == "-":

calc_entry.delete(0)

else:

calc_entry.insert(0, "-")

except IndexError:

pass

elif key == "EUR":

calc_entry.insert(END, "=" + str(77.04*(int(calc_entry.insert(

elif key == "USD":

calc_entry.insert(END, "=" + str(65.84*(int(calc_entry.insert(

pass

elif key == "Exit":

root.after(1,root.destroy)

sys.exit

elif key == "(":

calc_entry.insert(END, "(")

elif key == ")":

calc_entry.insert(END, ")")

else:

if "=" in calc_entry.get():

calc_entry.delete(0, END)

calc_entry.insert(END, key)

root.mainloop()

Объяснение:

как-то так

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вдвумерной матрице a(n, m), состоящей из произвольных чисел, определить номера столбцов, в которых среднее арифметическое его элементов меньше чем среднее арифметическое элементов массива.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

zotti
Arsen-araqelyan20164
Андреевич
Bordo
myatadinamo
msk-academ
АльбертовичБерезин58
информатика заполить таблицу​
demon8608
bufetkonfet53
sveta073120
mikhail
Ахади
ekatef45
АЛЕКСЕЙ
nastyakrokhina87