Помогите с Массивами пожалуйста разобраться.

в Си
1. Даны два массива x содержащий k элементов и y содержащий n элементов и число q. Найти сумму вида x[i]+y[j], где x[i]= q и y[j]= q.

2, В одномерном массиве, состоящем из n вещественных элементов, вычислить:
— произведение положительных элементов массива;
— сумму элементов массива, расположенных до минимального элемента

Вторую я почти сделал но он не выдает мне сумму.

#include <stdio.h>
#include <conio.h>

const int N = 100;

void main()
{
    int array[N],n, i,proiz = 1,sum=0 , nomer=0, min = array[0];


         printf("Vvedite n\n");
    scanf("%d", &n);
    printf("Vvedite chisla\n");

    for (i = 0; i<n; i++)
    {
        printf("chislo %d: ", i + 1);
        scanf("%d", &array[i]);

        if (array[i]>0)
        {
            proiz = proiz * array[i];
        }
    }
    printf("Proizv poloz elementov= %d", proiz);


    for (i = 0; i<n; i++)
    if (array[i] < min)
    {
    min = array[i];
      nomer = i;
      }
for (int i = 0; i<nomer; i++)

    sum+=array[i];

printf("sum do min elementov= %d", sum);

getch();

}

Во-первых, почитай Методика решений задач по теме «Массивы». Второе задание собирается из примеров из статьи, как из кубиков Lego.

Во-вторых, первое задание сформулировано некорректно. Начиная с того, что «сумма вида x[i]+y[j], где x[i]= q и y[j]= q», очевидно, всегда равна 2 * q. И вообще не понятно, что нужно сделать.

В-третьих, публикуй свои программы в читабельном виде.

хахаха, про 2 и я согласен, это лаба 4ая в БГУиРЕ. вот и как делать если не понятно что они хотят. так и учимся.

А с первой тоже не понятно задание, как найти сумму до минимального если до минимального не должно быть ничего, тк он и есть минимальный.

#include <iostream.h>
#include <conio.h>

int main()
{
    int a;
    cin >> a;
    cout << endl;
    int *a_2;
    int i = 0;
    while(a > 0)
    {
            a_2[i] = a%2;//где тут ошыбка?
            a = a/2;
            i++;
            }
    int n = i;
    for(i = n-1;i>=0;i--)
      cout << a_2[i];        
       getch();     
    return 0;

}
#include <iostream.h>
#include <conio.h>

int main()
{
    int a;
    cin >> a;
    cout << endl;
    int *a_2;   // <-- ЗДЕСЬ
    int i = 0;
    while(a > 0)
    {
            a_2[i] = a%2;//где тут ошыбка?
            a = a/2;
            i++;
            }
    int n = i;
    for(i = n-1;i>=0;i--)
      cout << a_2[i];        
       getch();     
    return 0;

}
/*Помогите пожалуйста разобраться в алгоритме этой задачи и скажите где здесь ошибка ?*/

#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
    int a;
  cin >> a;
    cout << endl;
    int *a_2;   // <-- ЗДЕСЬ
    int i = 0;
    while(a > 0)
    {
            a_2[i] = a%2;
            a = a/2;
            i++;
            }
    int n = i;
    for(i = n-1;i>=0;i--)
      cout << a_2[i];        
       getch();     
    return 0;
}

Derik, вы сначала опишите задачу, а потом разберемся с алгоритмом этой задачи.

Derik, aka Restomix, я же тебе буквально пальцем ткнул в то место, где ошибка. Комментарий // <— ЗДЕСЬ в ответ на комментарий //где тут ошыбка? никаких эмоций не вызвал?

И оформляй текст программы аккуратно. Прочитай то, что написано между Ответить и текстбоксом.

Никто не знает как это сделать можно?? со второй разобрался сделал. но вот эту вообще не знаю

  1. Даны два массива x содержащий k элементов и y содержащий n элементов и число q. Найти сумму вида x[i]+y[j], где x[i]= q и y[j]= q.

MonkeyHip, я тебе уже написал, что задача поставлена некорректно. Пойми, что в таком виде её решить нельзя. Бред написан.

Уточни формулировку задачи у учителя. Может условие списал неправильно?

Я не списывал, она в методичке, как то же прошлые курсы делали ее. я тоже понимаю что бред написан.

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.