Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C (СИ) Файлы, задано n ключевых слов https://www.cyberforum.ru/ c-beginners/ thread2822337.html
Задано n ключевых слов. Разработать програму, которая 1)Создает текстовый файл TF1 с символьными рядами разной длины в которой слова разделены пробелами. 2)Читает вместимое файла TF1 и...
C (СИ) Структуры https://www.cyberforum.ru/ c-beginners/ thread2822143.html
Создайте объединенный список записей о пищевых продуктах. Отдельные записи должны содержать наименование товара, производителя, количество штук и цена за единицу (помимо этих позиций не забудьте...
Создать файл последовательного доступа C (СИ)
Всем привет у меня тут задачка Создать файл последовательного доступа для хранения информации о цветах: код цветка; название; количество; стоимость. Вроде все легко ток не работает почему то ... А что именно не работает???
C (СИ) Двумерный массив символов https://www.cyberforum.ru/ c-beginners/ thread2822127.html
Программа изначально считывает размеры изображения n, m (два неотрицательных целые числа), а затем все изображение (в виде символов). программа затем выводит загруженное изображение в консоль и... #include <stdio.h> #include <malloc.h> int main(void) { int *arr, m, n; scanf("%d%d", &m, &n); arr = (int*)malloc(m*n * sizeof(int)); for(int i=0; i<m; i++)
C (СИ) Сортировка структуры
Необходимо сортировать по возрастанию номера рейса #include <stdlib.h> #include <stdio.h> #include <string.h> #define M 15 struct AEROFLOT { char nazn; int... void sort (struct AEROFLOT *a, int n) { struct AEROFLOT t; for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - i - 1; j++) { if (a.numr > a.numr) { ...
C (СИ) Перевод с C++ в си
Здравствуйте пом0гите перевести с С++ в си #include <iostream> #include <iomanip> int main() { int n; std::cin >> n; float** arr = new float* ; #include <stdio.h> #include <stdlib.h> #define swap_float(a, b) {float temp = a; a = b; b = temp;} float ** create_2d (int, int); void free_2d (float **); int input_2d (float **, int, int);...
C (СИ) Описать структуру с именем AEROFLOT https://www.cyberforum.ru/ c-beginners/ thread2822315.html
Формулировка задания: 1.Описать структуру с именем AEROFLOT, содержащую следующие поля:NAZN— название пункта назначения рейса;NUMR— номер рейса;TIP— тип самолета. 2.Написать программу, выполняющую... https://www.cyberforum.ru/cpp-beginners/thread895970.html#post4693082
C (СИ) Сортировка значения в структуре Дана структура, нужно заполнить её "годами" и отсортировать их в порядке увеличения. Проблема скорее всего в сортировке или в инициализации переменных. #include <stdio.h> #include <stdlib.h>... #include <stdio.h> #include <stdlib.h> #define N 100 typedef struct { int year; // год int index; // номер записи } diary; void inputDiary (diary *, int); https://www.cyberforum.ru/ c-beginners/ thread2822454.html
C (СИ) Как из файла f1 переместить слова начинающихся с гласных букв в f2? https://www.cyberforum.ru/ c-beginners/ thread2822328.html
Здраствуйте, пожалуйста помогите ибо я не знаю как это сделать( Вот что я написал, но дальше я не понимаю, как мне из файла f1, проверять каждое слово отдельно? чтобы понять начинается ли оно с... Вам нужно создать массив гласных и сверять первую букву слова с массивом гласных. Что то типа такого: #include <stdio.h> #define N 20 int main(void) { char str; char symbol = {'a', 'e', 'i',...
C (СИ) Подскажите, пожалуйста
Здравствуйте, нужно определить, является ли граф полным. (граф неориентированный) Добавлено через 10 минут Граф задаётся матрицей смежности. nYn, Обычно отсутствие связи в матрице смежности задается нулём. Т.е. вам нужно пройтись по всем элементам выше или ниже главной диагонали и проверить их на неравенство нулю. bool...
C (СИ) Написать программу, вычисляющую Cosx=1-x^2/2!+x^4/4!…+〖(-1)〗^k*x^2k/(2k)! Написать программу, вычисляющую Cosx=1-x^2/2!+x^4/4!…+〖(-1)〗^k*x^2k/(2k)! программа синус sin(x) = x - x^3/3! + x^5/5! - x^7/7! + x^9/9! ... #include <stdio.h> #include <stdlib.h> #include... User1011, ну и в чем вопрос? https://www.cyberforum.ru/ c-beginners/ thread2822372.html C (СИ) Вывод найденных столбцов из функции Нужно реализовать вывод номеров столбцов только с положительными элементами(выводом в подпрограмме не пользоваться) #include <stdio.h> #include <Windows.h> #include <malloc.h> int kek(int **a,int... Оно? #include <stdio.h> #include <stdlib.h> #include <locale.h> void free2d (int **, int); void print1d (int *, int); int kek (int **, int *, int, int); https://www.cyberforum.ru/ c-beginners/ thread2822585.html
0 / 0 / 0
Регистрация: 02.11.2020
Сообщений: 4
0

Переместить отрицательные элементы стека на его вершину - C (СИ) - Ответ 15457984

29.04.2021, 20:26. Показов 946. Ответов 0
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно переместить отрицательные элементы стека на его вершину. У меня выбивает ошибку, точнее вообще ничего не происходит когда я пытаюсь выполнить даннуюпрограмму. Помогите пожалуйста с решением
Вот код
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#include<stdio.h>
#include<conio.h> 
#include<windows.h>
 
void wait_press_key(char *msg); //ожидание нажатия клавиши
FILE *open_file(char *file_name, const char *mode); //открытие файла
int Create_Stack(char *f_name_t); //Формирование стека
void Print_Stack(); //печать стека
void Minus_El();
FILE *f1;//Файловая переменная, которая будет использоваться для создания стека 
//и добавления элементов в стек, а также для сохранения элементов стека в файле.
 
struct stack {                      // Тип элемента стека (структура)
    int Inf;                                // Информационное поле
    struct stack *Next;};       // Указатель на следующий элемент стека (справа)
 
struct stack *Beg=NULL; // указатель входа в стек (вершина)
//Если стек не создан, то значение Beg==NULL. После удаления стека значение Beg=NULL;                       
 
int main()
{   
    int k=0,p,KeyRegime;                    // Количество элементов в стеке
    char *f_name_x="stack.txt";
    //Подключение кирилицы в консольном окне
    SetConsoleOutputCP(1251);
    SetConsoleCP(1251);      
 
 
      do
    {
    //ClrScr;
    printf("\n      Режимы работы программы:");
    printf("\n      0 - конец работы;");
     printf("\n      1 - Формирование стека из файла;");
    printf("\n      2 - Вывод элементов стека\;");
    printf("\n 3 - Добавление отрицательных элементов на вершину стека");
        printf("\nВведите номер режима работы программы и нажмите ENTER:");
    fflush(stdin);
      p=scanf("%d",&KeyRegime);
      if(p<1)KeyRegime=50;
        switch (KeyRegime) 
    {
        case 0 : ;                                                      break;
            case 1 : k=Create_Stack("stack.txt");   break;
            case 2 : Print_Stack();                             break;
                case 3 : Minus_El();                               break;
                    default: printf("\nВыбран несуществующий режим\n");
        }
    } 
  while (KeyRegime!=0);
 
    wait_press_key("\nДля завершения программы нажмите любую клавишу\n");
    return 0;
}
 
//определение функций
//----------------------ожидание нажатия клавиши
void wait_press_key(char *msg)
{
    printf(msg);
    getch();
}
//----------------------открытие файла
FILE *open_file(char *file_name, const char *mode)
{   FILE *f;
    if((f=fopen(file_name,mode))==NULL)
        {
         printf("\nФайл %s не найден\n",file_name);
         wait_press_key("\nДля завершения программы нажмите любую клавишу\n");
         exit(0);
        }
    return f;
} 
//----------------------формирование Стека
//Функция формирует стек, читает элементы из файла f_name_t.
//Функция возвращает через свое имя количество элементов созданного стека,
//а если стек создан ранее, то возвращает -1
int Create_Stack(char *f_name_t)
{   
    int p,x,k=0;
    struct stack *Run;//Алгоритм функции использует глобальный указатель Beg и
    //локальный указатель Run.
    if(Beg!=NULL)
        {printf("\nСтек уже создан\n");
         return -1;//Выход из функции без создания стека
        }
    //текстовый файл открывается для чтения 
    f1=open_file(f_name_t, "rt");
    //считывание первого числа из текстового файла 
    if ((p=fscanf_s(f1,"%d",&x))<1) p=EOF;
    //цикл чтения текстового файла
    while (p!=EOF)
    {
        //Выделение памяти для элемента стека
        Run=(struct stack *)malloc(sizeof(struct stack));
        Run->Inf=x;//Запись в информационную часть считанного значения
        Run->Next=Beg;//Установка указателя на следующий (правый) элемент
        Beg=Run;//Установка указателя на вершину стека
        k++;//подсчет количества записанных элементов
        p=fscanf_s(f1,"%d",&x);  //чтение следующего числа
        //цикл завершится при достижении конца файла или при
        //ниличии ошибок в текстовом файле
        if (p<1) p = EOF;//Устанавливаем условие завершения цикла 
    }
    fclose(f1);//закрытие файла
    return k;  //Возвращаем количество элементов стека
}
void Print_Stack()
{   
 struct stack *Run;//Дополнительный указатель функции
 if(Beg==NULL)
 {
     printf("Стек не создан\n");
     return;
 }
 printf("%s","\nТекущий стек\n");     
 Run=Beg;                   //Текущий указатель на вершину стека
 while (Run!=NULL)  //Цикл просмотра элементов стека 
    {
     printf("%6d  ",Run->Inf);  //Печать элемента стека
     Run=Run->Next;                         //Движение по стеку
    }
    return;
}
//----------------------печать Стека
void Minus_El()
{   
 
 int kmin;                          //значение минимального элемента
 struct stack *Run,*Pmin,Newel;
 //Pmin указатель элемента, предшествующего минимальному 
 //Beg1 указатель вершины нового стека, в котором элементы исходного
 //стека будут расположены порядке убывания значений
 if(Beg==NULL)
 {
  printf("Стек не создан\n");
  return;
 }
 while (Beg!=NULL)  //Поиск минимального элемента в исходном стеке
 {
  kmin=Beg->Inf;            //Принимаем первый элемент за минимальный
  Pmin=Beg; 
  Run=Beg;                      //Начало просмотра стека
  while (Run->Next!=NULL)  //Поиск минимального элемента
    {
     if (Run->Next->Inf<kmin)
        {                                   
         kmin=Run->Next->Inf;   //Найден новый min. Запоминаем его значение 
         Pmin=Run;  
         //и адрес предшествующего элемента
        }
     
     Run=Run->Next; //Перемещение по стеку
    }
    
  }
 }


Вернуться к обсуждению:
Переместить отрицательные элементы стека на его вершину C (СИ)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.04.2021, 20:26
Готовые ответы и решения:

Извлечь из стека все элементы и вывести их значения, имея только указатель на его вершину
Дано указатель P1 на вершину стека (если стек пуст, то P1 = NULL). Извлечь из стека все элементы и вывести их значения. Вывести также...

Переместить в конец массива все его отрицательные элементы
Вычислить сумму положительных элементов массива. Вывести на дисплей полученное значение. После этого изменить исходный массив следующим...

Дан указатель Р1 на вершину непустого стека. Создать два новых стека, переместив в первый из них все элементы исходного стека с четными значениями, а
Помогите срочно составить задачу: Дан указатель Р1 на вершину непустого стека. Создать два новых стека, переместив в первый из них все...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.04.2021, 20:26
Помогаю со студенческими работами здесь

Извлечь из стека все элементы и вывести их значения, имея только указатель на его вершину
Дан указатель P1 на вершину стека (если стек пуст, то P1 = nil). Извлечь из стека все элементы и вывести их значения. Вывести также...

Дан указатель Top1 на вершину непустого стека. Создать два новых стека, переместив в первый из них все элементы исходного стека с четными значениями,
Здравствуйте, Уважаемые пользователи!!! Помогите пожалуйста решить данную задачу : Дан указатель Top1 на вершину непустого стека....

Дан указатель P1 на вершину непустого стека. Извлечь из стека первый (верхний) элемент и вывести его значение
Дан указатель P1 на вершину непустого стека. Извлечь из стека первый (верхний) элемент и вывести его значение D и адрес P2 новой вершины....

Дан указатель Р1 на вершину стека. Извлечь из стека все элементы и вывести значение
Здравствуйте, как можно написать эту программу , не используя функцию стека, а через массивы. Если стек пуст, то Р1=null

Дан указатель P1 на вершину стека (если стек пуст, то P1 = nil). Извлечь из стека все элементы и вывести их значения
Динамические структуры данных Все числа, используемые в заданиях на динамические структуры данных, являются целыми. Все указатели...

0
Новые блоги и статьи
Java Record или Kotlin Data Class: что лучше для неизменяемых данных
Wired 04.03.2025
Java Record и Kotlin Data Class - средства для работы с неизменяемыми структурами данных, каждое из которых предлагает свой уникальный подход к решению этой задачи. История их появления весьма. . .
Создание производительны­­х API с Java и gRPC
Wired 04.03.2025
В разработке производительность и масштабируемость микросервисных приложений играют ключевую роль. Традиционные REST API, несмотря на свою популярность и простоту, не всегда способны обеспечить. . .
Что нового в JDK 24
Wired 04.03.2025
JDK 24 знаменует собой значительный скачок в развитии Java, внося фундаментальные улучшения в производительность, безопасность и удобство разработки. Релиз включает множество революционых изменений,. . .
Разработка блокчейн с использованием Java: смарт-контракты и dApp
Wired 04.03.2025
Современная блокчейн-разработка на Java предоставляет разработчикам широкий спектр возможностей. В отличие от Solidity, который ограничен экосистемой Ethereum, Java позволяет создавать как. . .
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
Tестирование Pull Request в Kubernetes с помощью vCluster
stackOverflow 03.03.2025
При работе с микросервисной архитектурой критически важно обеспечить качественное тестирование каждого изменения перед его слиянием в основную кодовую базу. Однако тестирование Pull Request в. . .
Использование пакета Context в Golang
bytestream 03.03.2025
Управление параллельными процессами в современных приложениях - сложная задача, особенно когда речь идет о микросервисной архитектуре и распределенных системах. Пакет context в Go - это гибкое. . .
WebAssembly и Go: Работа с DOM и обработка ошибок
bytestream 03.03.2025
WebAssembly представляет собой технологию, позволяющую запускать низкоуровневый код в браузере практически на нативной скорости. Особенно интересные возможности открываются при использовании. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru