Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/22: Рейтинг темы: голосов - 22, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
1

Программирование циклов с параметром.

08.01.2012, 20:03. Показов 4058. Ответов 21
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребята помогите сделать 2 лабы завтра зачёт в универе а сделать не могу.((( Срочно ребят, прям очень буду благодарен, очень!

Добавлено через 3 минуты
Вот пример разбора программы!

Лабораторная работа №4
Программирование циклов с параметром.
Одномерные массивы
Цель работы: освоение средств языка С++ для описания циклов с параметром и закрепление навыков использования их при программировании, изучение способов описания, ввода-вывода и обработки одномерных массивов.
Пример
Задание. Произвести следующую обработку 15 целых чисел: подсчитать сумму чисел, входящих в диапазон [-5..5], и количество нечетных чисел.
Пример программы без использования массива:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include<stdio.h>
#include<conio.h>
void main()
{
int x,sum=0,i,kol=0;
printf("Enter numbers\n");
for (i=1;i<=15;i++)
{
scanf("%d",&x);
if ((x>=-5)&&(x<=5)) sum+=x;
if (x%2!=0) kol++;
}
printf("Summa v diapazone [-5,5]=%d\n", sum);
printf("Kolichestvo nechetnih=%d", kol);
}
 
 
Пример программы с использованием одномерного массива
#include<stdio.h>
#include<conio.h>
void main()
{
int a[15],sum=0,i,kol=0;
printf("Enter numbers\n");
for (i=0;i<15;i++)
scanf("%d",&a[i]);
for (i=0;i<15;i++)
{
if ((a[i]>=-5)&&(a[i]<=5)) sum+=a[i];
if (a[i]%2!=0) kol++;
}
printf("Summa v diapazone [-5,5]=%d\n", sum);
printf("Kolichestvo nechetnih=%d", kol);
}

А у меня вот такое задание: Лабораторное задание
1. Выбрать задание, соответствующее номеру варианта.
2. Составить схему программы и программу, осуществляющую ввод и обработку данных в соответствии с вариантом задания. Массивы не использовать.
3. Составить схему программы и программу, осуществляющую ввод и обработку данных в соответствии с вариантом задания. Использовать одномерные массивы.

А вот мой вариант задания сам: Произвести следующую обработку 10 вещественных чисел: найти количество чисел, больших или равных 1,5, и подсчитать сумму отрицательных чисел.

Добавлено через 2 минуты
Лабораторная работа №5
Обработка двумерных массивов. Указатели.
Цель работы: изучение способов описания, ввода-вывода и обработки двумерных массивов, использование указателей при работе с массивами.
Пример
Задание. Найти максимальную сумму элементов строк матрицы 35.
Пример программы без использования указателей:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <stdio.h>
void main()
{
int a[3][5], i, j, s, max;
printf (“Введите 3 строки по 5 чисел”);
for (i=0;i<3;i++)
 for (j=0;j<5;j++)
  scanf("%d",&a[i][j]);
printf (“Матрица а :\n”);
 for (i=0; i<3; i++)
  {for (j=0; j<5; j++)
    printf (%5d”, a[i][j]);
    printf (“\n”);
  }
for(i=0;i<3;i++)
  {s=0;
    for (j=0;j<5;j++)
      s+=a[i][j];
    if (i==0) max=s;
    else if (max<s) max=s;
  }
printf("Максимальная сумма строки = %d",max);
}
 
Пример программы с использованием указателей:
#include <stdio.h>
void main()
{
int a[3][5], *Р, i, j, s, max;
printf (“Введите 3 строки по 5 чисел”);
for (i=0;i<3;i++)
 for (j=0;j<5;j++)
  scanf("%d",&a[i][j]);
printf (“Матрица а :\n”);
 for (i=0; i<3; i++)
  {for (j=0; j<5; j++)
    printf (%5d”, a[i][j]);
    printf (“\n”);
  }
P=&a[0][0];
for(i=0;i<3;i++)
  {s=0;
    for (j=0;j<5;j++)
      {s+=*P;
        P++;
      }
    if (i==0) max=s;
    else if (max<s) max=s;
  }
printf("Максимальная сумма строки = %d",max);
}
Лабораторное задание
1. Выбрать задание, соответствующее номеру варианта.
2. Составить схему программы и программу для решения задачи в соответствии с вариантом задания в соответствии с вариантом задания. Указатели не использовать.
3. Составить схему программы и программу для решения задачи в соответствии с вариантом задания. Использовать указатели.

Вот мой вариант задания: Переписать первые элементы каждой строки матрицы A (mn), большие С, в массив В. Если в строке нет элемента, большего С, то записать ноль в массив В.
 Комментарий модератора 
Создавайте темы с осмысленными и понятными названиями - это серьезно повышает шансы, что на ваш вопрос ответят.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.01.2012, 20:03
Ответы с готовыми решениями:

Программирование циклов с параметром. Одномерные массивы
Произвести следующую обработку 15 вещественных чисел: найти количество отрицательных чисел, а...

Программирование циклов с параметром. Одномерные массивы
ужас, помогите решить лабораторную, завтра экзамен, а у меня не сделано, я вообще не понимаю как...

напишите 2 программы (с использованием циклов с параметром и циклов с условием) для вычисления и вывода на экран в виде

Программирование циклов while, for, do.while
Всем доброго времени суток! Помогите пожалуйста с задачей условия таковы: Для каждого x,...

21
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
08.01.2012, 20:08 2
Как много текста и нечитабельно.
Напишите лучше что Вам нужно сделать!
Лишний код из методичек здесь никому не нужен!
0
63 / 35 / 13
Регистрация: 21.10.2010
Сообщений: 538
08.01.2012, 20:25 3
Согласен с ZaVyLoN, просто напишите задачи, на которые надо составить программы
0
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
08.01.2012, 21:57  [ТС] 4
написал вон задание в конце под лабами

Добавлено через 16 минут
ЛАба №5
Переписать первые элементы каждой строки матрицы A (m х n), большие С, в массив В. Если в строке нет элемента, большего С, то записать ноль в массив В.
(в соответствии с лабораторным заданием)

Добавлено через 1 минуту
Лаба №4 Произвести следующую обработку 10 вещественных чисел: найти количество чисел, больших или равных 1,5, и подсчитать сумму отрицательных чисел. (так же в соответствии с лабораторным заданием)
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
08.01.2012, 22:23 5
Цитата Сообщение от Legion45612 Посмотреть сообщение
Лаба №4 Произвести следующую обработку 10 вещественных чисел: найти количество чисел, больших или равных 1,5, и подсчитать сумму отрицательных чисел. (так же в соответствии с лабораторным заданием)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <locale>
 
using namespace std;
 
#define n 10
 
int main()
{
    setlocale(LC_ALL, "Rus");
    double arr[n], sum = 0;
    int count = 0;
    
    cout << "Введите числа:" << endl;
    for(int i = 0; i < 10; i ++)
    {
        cin >> arr[i];
        
    }
 
 
    for(int i = 0; i < 10; i ++)
    {
        if(arr[i] >= 1.5)
        {
            count++;
        }
        if(arr[i] < 0)
            sum += arr[i];
    }
    cout << "Count = " << count << endl << "Sum = " << sum << endl;
    return 0;
}
Добавлено через 7 минут
Цитата Сообщение от Legion45612 Посмотреть сообщение
Переписать первые элементы каждой строки матрицы A (m х n), большие С, в массив В
Не совсем понятно условие.
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
08.01.2012, 22:25  [ТС] 6
Не я составлял задание, поэтому объяснить не могу и еще там как бы двойное задание с не использованием и с использованием одномерных массивов я вот ток сам не как не пойму это относиться к составлению блок схемы или к составлению программы
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
08.01.2012, 22:36 7
Вот не используя массивы!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
#include <locale>
 
using namespace std;
 
#define n 10
 
int main()
{
    setlocale(LC_ALL, "Rus");
    double arr, sum = 0;
    int count = 0;
    
    cout << "Введите числа:" << endl;
    for(int i = 0; i < 10; i ++)
    {
        cin >> arr; 
        if(arr >= 1.5)
        {
            count++;
        }
        if(arr < 0)
            sum += arr;
    }
 
 
    cout << "Count = " << count << endl << "Sum = " << sum << endl;
    return 0;
}
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
08.01.2012, 22:40  [ТС] 8
Спасибо большое, очень признателен! Ток вот как 5 делать ваще не в курсе, у нас просто не особо училка в универе нефига не объясняет, а в школе даже и не проходили.
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
08.01.2012, 22:45 9
Для спасибо есть специальная кнопка внизу каждого поста.
Если считате что пост полезен и помог вам, тогда жмете ее.

Думаю админы ругать меня за это не будут)
т.к. зарегились Вы только сегодня!

5 сейчас посмотрю.
Если есть вопросы, Вы спрашивайте.
Код Вам кто угодно написать может, а разбираться придется Вам и только.
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
08.01.2012, 22:55  [ТС] 10
У меня проблемы только с составлением отчета по лабам, там вообще беда.
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
08.01.2012, 23:21 11
C отчетамипридется самому разибраться.
Уточните условие 5 лабы, тогда помогу.

Или может под вечер я немного туплю!

Цитата Сообщение от Legion45612 Посмотреть сообщение
Переписать первые элементы каждой строки матрицы A (m х n), большие С, в массив В. Если в строке нет элемента, большего С, то записать ноль в массив В.
Первые! - может здесь имеется ввиду первый элемент?
если он больше С, тогд записываем его в массив B, если меньше, тогда пишем 0
1
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
08.01.2012, 23:29 12
Цитата Сообщение от Legion45612 Посмотреть сообщение
Лаба №4 Произвести следующую обработку 10 вещественных чисел: найти количество чисел, больших или равных 1,5, и подсчитать сумму отрицательных чисел. (так же в соответствии с лабораторным заданием)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
#include <algorithm>
using namespace std;
 
template<typename T>
struct Strange
{
    T sumNeg; //подсчитать сумму отрицательных чисел
    T countPos; //найти количество чисел, больших или равных 1,5
    Strange():sumNeg(0),countPos(0){}
    void operator()(T number)
    {
        if (number<0) sumNeg+=number;
        else if(number>=1.5) countPos++;
    }
};
 
 
int main ()
{
    const int SIZE=10;
    double v[]={1,-2,3,-4,5,-6,7,-8,9,-10};
    Strange<double> s;
    s=for_each(v,v+SIZE,s);
    cout<<s.sumNeg<<'\t'<<s.countPos;
 
}
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
09.01.2012, 12:24  [ТС] 13
Не запускается программа не с массивами не без них при компиляции выдает 8 ошибок пытаясь их исправить остаётся одна, но не могу понять в чём она заключается.
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
09.01.2012, 12:26 14
Какой компилятор, какие ошибки?
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
09.01.2012, 12:29  [ТС] 15
Ребят извините пожалуйста, но ваши программы написаны не корректно у нас в программе обучения в университете С++ DOS версия 3.0 и большинство ваших библиотек он просто не видит или не распознает и поэтому обнаруживает кучу ошибок.
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
09.01.2012, 13:14 16
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <stdio.h>
#include <conio.h>
 
 
 
int main()
{
        float arr[10], sum = 0;
        int count = 0, i;
        
    
 
        printf("Enter number:\n");
        for(i = 0; i < 10; i ++)
        {
            scanf("%f", &arr[i]);        
        }
 
 
        for(i = 0; i < 10; i ++)
        {
            if(arr[i] >= 1.5)
            {
        count++;
            }
            else if(arr[i] < 0)
    {
        sum += arr[i];
    }
        }
        printf("\ncount = %d", count);
        printf("\nsum = %f", sum);
        getch();
        return 0;
}
1
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
09.01.2012, 14:02 17
Цитата Сообщение от Legion45612 Посмотреть сообщение
Ребят извините пожалуйста, но ваши программы написаны не корректно у нас в программе обучения в университете С++ DOS версия 3.0
окай
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
#include <conio.h>
 
struct Strange
{
    double sumNeg; //подсчитать сумму отрицательных чисел
    int countPos; //найти количество чисел, больших или равных 1,5
    Strange():sumNeg(0),countPos(0){}
    void operator()(double number)
    {
        if (number<0) sumNeg+=-number;
        else if(number>=1.5) countPos++;
    }
};
 
 
int main ()
{
    int i;
    const int SIZE=10;
    double v[SIZE]={1,-2,3,-4,5,-6,7,-8,9,-10};
    Strange s;
    for(i=0;i<SIZE;i++)
     s(v[i]);
    printf("%g\t%d",s.sumNeg,s.countPos);
}
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
10.01.2012, 08:27  [ТС] 18
Ребят зачёт я не получил его мне перенесли еще на неделю так, что есть время подумать над 5-ой лабой
0
84 / 84 / 20
Регистрация: 26.10.2009
Сообщений: 269
11.01.2012, 14:14 19
Цитата Сообщение от ZaVyLoN Посмотреть сообщение
Переписать первые элементы каждой строки матрицы A (m х n), большие С, в массив В. Если в строке нет элемента, большего С, то записать ноль в массив В.
Первые! - может здесь имеется ввиду первый элемент?
если он больше С, тогд записываем его в массив B, если меньше, тогда пишем 0
Если в 5 нужно так сделать, то это на 5 сек.
Вы не уточнили у препода условие?
1
0 / 0 / 0
Регистрация: 08.01.2012
Сообщений: 12
11.01.2012, 19:41  [ТС] 20
Там как раз таки просто тут сложного и не должно быть как говорит препод, сделайте как считаете нужным
0
11.01.2012, 19:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.01.2012, 19:41
Помогаю со студенческими работами здесь

Программирование циклов.
Я получил объемное задание по С++ которое осилить мне практически невозможно, посему надеюсь на...

Программирование вложенных циклов
Программирование вложенных циклов Постановка задачи: В настоящей лабораторной работе необходимо...

Программирование циклов с простыми переменными
Дорогие форумчане, объясните возможное решение вот этой задачи, я не могу понять вообще смысл...

1.программирование циклов.2.обработка массивов данных
1.Вычислить S = 1/sqrt(1 3) + 1/sqrt(3 5) + ... + 1/sqrt(199 201) 2.Дан одномерный массив А,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru