Loading...
+ Нов въпрос
Yordan.Vachev avatar Yordan.Vachev 2 Точки

Cartesian product

Нчкои мове ли да ми помогне с тази задача?

Write a program which reads an array from the console and prints the product of each of its elements with all
elements. E.g. for the array {1, 7, 3}, the result would be {1 * 1, 1 * 7, 1 * 3, 7 * 1, 7 * 7, 7 * 3, 3 * 1, 3 * 7, 3 * 3},
which gives us the array {1, 7, 3, 7, 49, 21, 3, 21, 9}, so for the input
1 7 3
the program should print
1 7 3 7 49 21 3 21 9

Тагове:
0
C++ Fundamentals
p.petrova19 avatar p.petrova19 2 Точки

ето ти моето решение:

#include<iostream>
using namespace std;

void cartesianProduct(int arr[], int arraySize) {
    for(int i = 0; i < arraySize; i++) {
        for(int j = 0; j < arraySize; j++) {
            cout << arr[i] * arr[j] << ' ';
        }
    }
}

int main() {

    int arraySize;
    cin >> arraySize;

    int arr[arraySize] = {0};

    for(int i = 0; i < arraySize; i++) {
        cin >> arr[i];
    }

    cartesianProduct(arr, arraySize);

    return 0;
}

 

0
alexandar_zhelev avatar alexandar_zhelev 1 Точки

Привет,

пробвах се да дебъгна този код, ред по ред, за да видя кое как се случва поетапно, обаче на мен ми дава грешка в main функцията int arr [arraySize] = {0}; - подчертава ми arraySize и ми изписва следната грешка: "expression must have a constant value, the value of variable "arraySize" cannot be used as a constant.". Пробвах да копи-пейстна кода в Джъдж и там няма никакъв проблем. Идеята ми не е да го копирам и да съм готов със задачата, а исках да видя нагледно нещата. Въпроса ми е, защо ми дава грешка при положение, че не съм бутал абсолютно нищо по кода? Това ми е втората или третата задача която ми гърми по същия начин и не мога да си обясня защо. Използвам Visual Studio 2017.

0
j.petrov_90 avatar j.petrov_90 372 Точки

Привет, колега,

Жокер:
за всяко число от масива /* for цикъл*/
ти трябва да направиш нещо свързано отново със всички числа /*  може би още един for цикъл */

Поздрави

0
18/09/2019 21:41:27
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.