ответ:
на форму поставил компонент memo
в edit1 и edit2 вводим значения строк и столбцов
для цикла for i: = for j: =
на кнопке следующий код
объяснение:
procedure tform1.button1click(sender: tobject);
var i,j: integer; s: string;
begin
a: = strtoint(edit1.text);
b: = strtoint(edit2.text);
for i: = 1 to a do begin
s: = '';
for j: = 1 to b do
s: = s+' '+inttostr(i*j);
memo1.lines[i-1]: = s;
end;
end;
сноска — это ссылка вне основного текста на источник информации, использованный при написании статьи, или комментарий. ссылка создаётся с соответствующих тегов или шаблонов, которые нужно вставить после поясняемой части текста.
в окончательном тексте сноски размещаются автоматически в разделе «примечания». также автоматически после фрагмента поясняемого текста ставится знак сноски (цифра или значок), связывающий поясняемый текст со сноской, а в «примечаниях» перед сноской ставится значок возврата к поясняемому тексту. если кликнуть мышкой по знаку сноски, то текст переместится к сноске, если по значку возврата — то к поясняемому тексту.
Для начала определим функцию определения простого числа:
def issimple(n):
r=math.ceil(math.sqrt(n))
for i in range(2,n):
if n%i==0:
return False
return True
для оптимизации перебираем числа до квадратного корня искомого числа. Если n делится на хотя бы одно число от 2-х до корня n возвращаем false. Иначе True
Приведу полный оптимизированный текст:
import math
def issimple(n):
r=math.ceil(math.sqrt(n))
for i in range(2,n):
if n%i==0:
return False
return True
n=5
s=[2,3]
while True:
if issimple(n) is True:
s.append(n)
if len(s)==10001:
break
n+=2
print(s[-1])
Объяснение:Не смотря на все попытки дальнейшей оптимизации цикл выполняется чуть меньше 3-х минут.
Основные принципы оптимизации: перебираем начиная с 5-ти и увеличиваем на 2 (чтобы не включать четные числа.
Условием выхода из цикла является длина списка = 10001
Если у вас получится выполнить задачу более оптимально рада услышать ваши предложения.
НАДЕЮСЬ ТЫ ПОНЯЛ(А)