tsagol10
26.04.2022 10:35

написать программу, которая запрашивает у пользователя номер дома и номер квартиры и выводит это на экран.
2. написать программу, которая вычисляет периметр треугольника. Компьютер спрашивает у пользователя "введите длину стороны", пользователь набирает на клавиатуре, компьютер считывает. Находит периметр и выводит результат на экран
3.Написать программу, которая подсчитывает, сколько вы потратите в магазине денег на покупку: несколько тетрадей, несколько ручек, несколько карандашей. Количество(целое число) и цену (вещественное число) вводите с клавиатуры. Результат на экран
Для ввода разных типов-указываете эти типы в разделе var

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
rabramchik
26.07.2020 08:15
Ошибка 1

using namespace::std;

Верно использовать пространство имён таким образом:

using namespace std;

Ошибка 2

Вы объявляете итератор ещё перед циклом, причём вместе с массивом. Надо понимать, что итератор - это счётчик, int. А массив - это совокупность таких частичек int. Не нужно всё под одну крышу загонять. Объявляйте итераторы (если они Вам не нужны, например, для результирующих счётов или прочего - по ситуации) в самом цикле, не мучайте глаза программистов.

Правильно объявлять так:

int arr[] = {1,2,3,4,5,6,7,8,9};

for(int i = ..)

Ошибка 3

Вы начинаете цикл с 1, хотя Вам нужно пройтись по всему массиву, начиная с самого первого элемента. Поскольку всё строится на десятичной системе счисления (от 0 до 9), то первый элемент будет иметь номер 0. Следовательно, цикл следовало бы начать с нуля.

Правильно объявить цикл нужно так:

for(int i = 0; ..)

Ошибка 4

Поскольку вы не указываете размер массива, а потом считаете 10 элементов (хотя это уже неправильно, цикл возьмёт один лишний, уже выходящий из заданного Вами массива кусочек и отнимет от него 20)

Правильно было бы объявлять условие цикла так:

for(int i = 0; i < (sizeof(arr)/sizeof(int)); i++){/*...*/}

То есть мы берём размер массива в байтах, размер типа int в байтах (по сути это константа - 4 байта, но на разных версиях оси она может соответствовать разным значениям) и делим размер массива на размер типа, массив которого мы создали (в нашем случае - int)

А лучше всего вынести выражение sizeof(arr)/sizeof(int) в отдельную переменную:

int arraySize = sizeof(arr)/sizeof(int);

for(int i = 0; i < arraySize; i++)

Разница в том, что при каждой итерации цикл считает заново размер массива - а это лишние операции.

Ошибка 5

Так как Вы хотите вывести каждое результатирующее число через пробел,  Вам нужно выводить его через каждую итерацию цикла, а не после него. Ваша ошибка будет заключаться в том (если не учитывать предыдущие), что цикл инкрементирует переменную i до 10 и выведет на консоль arr[i], то есть arr[10] элемент, которого как раз-таки нет в массиве (объяснил в 3 ошибке)

Правильно было бы выводить так:

for(int i = 0; i < arraySize; i++){

arr[i] = arr[i] - 20;

cout << arr[i] << " ";

}

Замечание 6

Функция типа int main() должна всегда возвращать что-то. Это стандарт языка.

То есть, правильно было бы в конце добавить:

return 0;

Итоговый код и проверка представлены на в приложении:


Есть массив, не получается от каждого элемента отнять 20? сделать на с++ #include pch.h #include u
Есть массив, не получается от каждого элемента отнять 20? сделать на с++ #include pch.h #include u
0,0(0 оценок)
Ответ:
andrey4565178
31.01.2022 12:14

Program mathlover12;

const

 n = 6; {Количество элементов массива}

var  

 a:array[1..n] of integer;

s:string;

i,min,max: integer;

begin

 s:=' -=Alphaeus=- ';

 for i:=1 to 22 do begin write(s[i]); sleep(42) end;

{вводим элементы массива}

 writeln; writeln('Введите ',n,' чисел:');

 for i:=1 to n do read(a[i]);

{Ищем min и max}

min:=a[1];

max:=a[1];

 for i:=2 to n do

   begin

     if min>a[i] then min:=a[i];

     if max<a[i] then max:=a[i];

   end;

{Выводим произведение  min и max}

 writeln; writeln;

 writeln('Произведение min и max равнo ',min*max);

end.

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