0 / 0 / 0
Регистрация: 02.06.2019
Сообщений: 29
1

Определить номера строк массива, содержащих только положительные элементы и найти среди них наименьший

17.06.2019, 14:49. Показов 861. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
дано задание:
Дан двумерный массив размером n*m, заполненный случайными числами из заданного пользователем промежутка. Определить номера строк массива, содержащих только положительные элементы и найти среди них наименьший, если такие строки есть, то вывести все на экран и в текстовый файл.
не получается задать условия для нахождения положительных элементов
вот набросок программы
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
#include <malloc.h>
#include<stdbool.h>
int main()
{
    srand(time(NULL));
    system("chcp 1251>0");
 
    system("cls");
    int nach, kon, m, n,i,j,min=-100;
    FILE *file2;
    file2 = fopen("file2.txt","wt");
    printf("Введите размер массива: ");
    scanf("%d %d", &m, &n);
    printf("Введите промежуток: ");
    scanf("%d %d", &nach, &kon);
    int ar[m][n];
    //,ar2[m];
    for (int i = 0; i < m; i++)
    {
        for(int j = 0; j < n; j++)
        {
            ar[i][j]=rand()%(kon-nach+1)+nach;
                printf("%3.d ", ar[i][j]);
        }
        printf("\n");
    }
 for (int i = 0; i < m; i++)
    {
        fprintf(file2,"%d ",ar[i][j]);
        if (min < ar[i])
            min = ar[i];
    }
    fprintf(file2,"%d ",min);
 
 ////////////////////////////
//условие
//////////////////////////////
 
           // for (int i = 0; i < n; i++)
    fprintf(file2,"%d ",ar[i][j]);
    fclose(file2);
    printf("\n содержимое файла: ");
    file2= fopen("file2.txt","rt");
    if (getc(file2) == EOF)
        printf("Файл пуст!");
    else
    {
        rewind(file2);
        while (!feof(file2))
        {
            fscanf(file2,"%d ",&nach);
            printf("%d ",nach);
        }
    }
    free(ar);
   // free(ar2);
    fclose(file2);
    printf("\n");
    system("pause");
 
}
0
17.06.2019, 14:49
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.06.2019, 14:49
Ответы с готовыми решениями:

Массив размером m*n. Заполнить его с клавиатуры. Определить номера строк, содержащих только положительные элементы
Дан двумерный массив размером m*n. Заполнить его с клавиатуры. Определить номера строк, содержащих только положительные элементы.

Определить номера столбцов содержащих только положительные элементы
Добрый день. Задание:определить номера столбцов содержащих только положительные элементы, вычислить суммы этих элементов для каждого...

Определить количество строк, содержащих только положительные элементы
Дана целочисленная прямоугольная матрица. Определить: 1) количество строк, содержащих только положительные элементы; 2) номер...

1
 Аватар для Зосима
5243 / 3571 / 379
Регистрация: 02.04.2012
Сообщений: 6,474
Записей в блоге: 17
21.06.2019, 15:22 2
born plagued, ты минимум неверно ищешь, нужно if (ar[i]<min) ...
Причесал немного, правда вторая часть, где вывод содержимого файла, у меня не работает

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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <malloc.h>
#include <windows.h>
#include <stdbool.h>
int main()
{
    srand(time(NULL));
    system("chcp 1251>0");
    system("cls");
    int nach, kon, m, n,i,j,k,min,flag;
    FILE *file2;
    file2 = fopen("file2.txt","wt");
    printf("Введите размер массива (m n): ");
    scanf("%d %d", &m, &n);
    printf("Введите диапазон чисел от и до: ");
    scanf("%d %d", &nach, &kon);
    int ar[m][n], istr[m];
    //,ar2[m];
    k = 0; // счетчик положительных строк
    for (int i = 0; i < m; i++) // пробегаем по строкам
    {
      flag = 1; // флаг положительных значений
      for(int j = 0; j < n; j++) // пробегаем по столбцам
        {
          ar[i][j]=rand()%(kon-nach+1)+nach;
          printf("%3.d ", ar[i][j]);
          if (ar[i][j]<=0) flag = 0; // если элемент отрицательный - сбрасываем флаг
        }
 
        if (flag) // если отрицательных значений не было, flag == 1
        {
          istr[k] = i; // сохраняем номер строки
          k++; // увеличиваем счетчик
        }
        printf("\n");
    }
    
    if (!k) // если k=0, т.е. положительных строк нет
    {
        printf("Положительные строки не найдны, милорд!");
        return 0; // идем пить чай с козинаками ^__^
    }
    else // а если все жыЕсть - придется поработать -__-
    {
      printf("Положительные строки: \n");
      min = ar[istr[0]][0]; // присваиваем минимуму первый элемент массива
      for (i = 0; i < k; i++) // пробегаем по всем положительным строкам
      {
      for (j = 0; j < n; j++) // пробегаем по всем столбцам
        {
          fprintf(file2,"%d ",ar[istr[i]][j]); // записываем в файл
          printf("%d ",ar[istr[i]][j]); // выводим на экран
          if (ar[istr[i]][j]<min) 
             min = ar[istr[i]][j]; // если текущий элемент меньше минимума, то он становится минимумом
        }
      fprintf(file2,"\n"); // куда же без переноса строки
      printf("\n"); // куда же без переноса строки
      }
    fprintf(file2,"Минимальный элемент: %d \n",min);
    printf("Минимальный элемент: %d \n",min);
    fclose(file2);
    }  
 
  //////////// дальше у меня не работает :(
 
    printf("\n содержимое файла: ");
    file2= fopen("file2.txt","rt");
    if (getc(file2) == EOF)
        printf("Файл пуст!");
    else
    {
        rewind(file2);
        while (!feof(file2))
        {
            fscanf(file2,"%d ",&nach);
            printf("%d ",nach);
        }
    }
    free(ar);
   // free(ar2);
    fclose(file2);
    printf("\n");
    system("pause");
 return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.06.2019, 15:22
Помогаю со студенческими работами здесь

В матрице определить количество строк, содержащих только положительные элементы
Помогите с решением задачи! Дана целочисленная прямоугольная матрица. Определить: 1) количество строк, содержащих только положительные...

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

Определить номера столбцов содержащих только отрицательные элементы матрицы
Помогите пожалуйста сделать задание : определить номера столбцов содержащих только отрицательные элементы матрицы nxm

Определить количество строк матрицы, содержащих только нулевые элементы
-Дана целочисленная прямоугольная матрица. Определить количество строк, содержащие только нулевые элементы. ____ Пожалуйста помогите!

Определить количество строк матрицы, содержащих только отрицательные элементы
Дана матрица размером МxN. Определить количество строк, содержащих только отрицательные элементы.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Опции темы

Новые блоги и статьи
Использование кэша Laravel - полный гайд
bytestream 18.02.2025
Кэширование - один из наиболее эффективных способов повышения производительности веб-приложений. В современном мире, где скорость загрузки страниц напрямую влияет на удержание пользователей и. . .
Создаем REST API в Laravel с аутентификацией через Passport
bytestream 18.02.2025
Разработка современных веб-приложений все чаще требует создания надежного и хорошо структурированного API. REST API стал стандартом де-факто для построения взаимодействия между клиентской и серверной. . .
Пайплайны в Laravel - полный гайд
bytestream 18.02.2025
Разработка современных веб-приложений часто требует обработки сложных процессов, состоящих из множества последовательных шагов. Например, при создании системы комментариев может потребоваться. . .
Как правильно использовать @required в Symfony
bytestream 18.02.2025
При разработке приложений на Symfony мы часто сталкиваемся с необходимостью внедрения зависимостей. Фреймворк предоставляет несколько способов управления этим процессом, и одним из таких инструментов. . .
Система безопасности в Laravel: возможности и примеры
Wired 18.02.2025
Каждый день появляются новые виды атак и уязвимостей, которые могут поставить под угрозу конфиденциальные данные пользователей и функционирование всей системы. В этом контексте выбор надежного. . .
Давайте сравним Django и Laravel
Wired 18.02.2025
Django и Laravel - два мощных инструмента, которые часто сравнивают между собой. Оба фреймворка предлагают разработчикам богатый набор возможностей для создания масштабируемых веб-приложений, но. . .
Laravel или React - что лучше?
Wired 18.02.2025
В разработке веб выбор правильного инструмента часто определяет успех всего проекта. Особенно интересным представляется сравнение Laravel и React - двух популярных технологий, которые часто. . .
Laravel 11: новые возможности, гайд по обновлению
Wired 18.02.2025
Laravel 11 - это новая масштабная версия одного из самых популярных PHP-фреймворков, выпущенная в марте 2024 года. Эта версия продолжает традицию внедрения передовых технологий и методологий. . .
Миграции в Laravel
Wired 18.02.2025
Разработка веб-приложений на Laravel неразрывно связана с управлением структурой базы данных. При работе над проектом часто возникает необходимость вносить изменения в схему базы данных - добавлять. . .
Аутентификация в Laravel
Wired 18.02.2025
В современном мире веб-разработки безопасность пользовательских данных становится критически важным аспектом любого приложения. Laravel, как один из самых популярных PHP-фреймворков, предоставляет. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru