В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
Yasmina55
Yasmina55
02.12.2020 19:33 •  Информатика

ДОМАШНЕЕ ЗАДАНИЕ 1. Вместо точек вставьте пропущенные слова а) Термин «информатика» образован от слов б) Информатика -, которая учит метода поиска, хранения, обработки и т. д. обен стил в) Если в изучении информатики се это инструмент. 2. Свяжите процесс работы человека с направлениями предмета информатики. - это главный объект, 1, Техническая часть Компьютер 7 Установка антивируса 2 Распечатать документ Обработка 3 изображений 4 Программирование Записать видео, Игры 5 на ДИСК Выполнить расчеты с компьютера 7 Настроить компьютер Набор текста на 8. клавиатуре 9 Создание сайта Программная Часть компьютера Умственный труд человека 10 Управление мышкой

Показать ответ
Ответ:
ylau2006g
ylau2006g
05.04.2020 08:03

ответ:

. в нужно вывести все составные числа из промежутка [2; n]. код программы:

program lab3;

var i,n,j,s,l: integer;

m: real;

begin

readln (n);

for i: =2 to n do

begin

s: =trunc (sqrt (i));

for l: =2 to s do

begin

m: = i mod l;

if m=0 then

write (' ',i);

end;

end;

end.

но проблема - как только s становится больше 2, составные числа начинают несколько раз повторятся, т.к., например 12 делится и на 2 и на 3. вопрос: как мне сделать выход из цикла после первого успешного деления?

var

i, n, j, s, l: integer;

m: real;

begin

readln(n);

for i : = 2 to n do

begin

s : = trunc(sqrt(i));

for l : = 2 to s do

begin

m : = i mod l;

if m = 0 then

begin

write(' ', i);

break;

0,0(0 оценок)
Ответ:
AmmosD
AmmosD
28.03.2023 09:12

Что это за дикий п***ец? Даже названия классов, функций непонятно какие, про ввод значений вообще молчу.

А ответ программа не выводит потому что нарушена логика вызова функций. А нарушена по нескольким причинам. Первая - полное непонимания того, что автор пишет, непонимания ООП, что куда возвращается и т.д. Вторая - несоответствие возвращаемых значений назначению функции. Почему функция Vvod() возвращает сумму введенных чисел? Это создает путаницу, она должна возвращать сами числа. Стоит почитать книги про написанию кода, например "Совершенный код", что бы понимать базовые правила. Одна функция - одна задача.

Конкретно в данном случае нужно в мейне вызвать только Console.WriteLine(Vivod()), т.е. отображение возвращаемого значения функции Vivod(), т.к. к ней уже будет вызвана Summa(), а в ней и Vvod().

Ну а вообще - надо по полной переделывать, а то проверяющему будет больно(ментально), тем более сумма 5 веденных чисел находится за 4 строчки кода:

int sum = 0;

for (int i = 1; i < 6; i++){

   Console.WriteLine($"Введите {i}-ий эмемент:");

   sum += int.Parse(Console.ReadLine()); }

Console.WriteLine($"Сумма равна {sum}");

P.S. Это лабораторная по массивам? Но ты массивы даже в своем решении не используешь.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота