Обновить cv2/program.c
This commit is contained in:
		
							parent
							
								
									5a907b7950
								
							
						
					
					
						commit
						6d525d44f9
					
				| @ -15,44 +15,37 @@ int main() { | ||||
|         char dish[MAX_LENGTH]; | ||||
|         char price[MAX_LENGTH]; | ||||
| 
 | ||||
|         // Читаем название блюда
 | ||||
|         if (fgets(dish, MAX_LENGTH, stdin) == NULL) { | ||||
|             break; // Если чтение не удалось, выходим из цикла
 | ||||
|             break; | ||||
|         } | ||||
|         dish[strcspn(dish, "\n")] = 0; // Убираем символ новой строки
 | ||||
|         dish[strcspn(dish, "\n")] = 0; | ||||
| 
 | ||||
|         // Проверяем на пустую строку
 | ||||
|         if (strlen(dish) == 0) { | ||||
|             break; // Выход из цикла при пустой строке
 | ||||
|             break; | ||||
|         } | ||||
|         strcpy(dish_name[count], dish); // Сохраняем название блюда
 | ||||
|         strcpy(dish_name[count], dish); | ||||
| 
 | ||||
|         // Читаем цену блюда
 | ||||
|         if (fgets(price, MAX_LENGTH, stdin) == NULL) { | ||||
|             break; // Если чтение не удалось, выходим из цикла
 | ||||
|             break; | ||||
|         } | ||||
|         price[strcspn(price, "\n")] = 0; // Убираем символ новой строки
 | ||||
|         price[strcspn(price, "\n")] = 0; | ||||
| 
 | ||||
|         // Проверяем на пустую строку
 | ||||
|         if (strlen(price) == 0) { | ||||
|             break; // Выход из цикла при пустой строке
 | ||||
|             break; | ||||
|         } | ||||
| 
 | ||||
|         // Преобразуем цену в число с плавающей запятой
 | ||||
|         dish_price[count] = atof(price); | ||||
|         count++; | ||||
|     } | ||||
| 
 | ||||
|     // Сортируем блюда по цене
 | ||||
|     for (int i = 0; i < count - 1; i++) { | ||||
|         for (int j = 0; j < count - i - 1; j++) { | ||||
|             if (dish_price[j] > dish_price[j + 1]) { | ||||
|                 // Меняем местами цены
 | ||||
|             if (dish_price[j] > dish_price[j + 1] || | ||||
|                 (dish_price[j] == dish_price[j + 1] && strcmp(dish_name[j], dish_name[j + 1]) > 0)) { | ||||
|                 double temp_price = dish_price[j]; | ||||
|                 dish_price[j] = dish_price[j + 1]; | ||||
|                 dish_price[j + 1] = temp_price; | ||||
| 
 | ||||
|                 // Меняем местами названия
 | ||||
|                 char temp_name[MAX_LENGTH]; | ||||
|                 strcpy(temp_name, dish_name[j]); | ||||
|                 strcpy(dish_name[j], dish_name[j + 1]); | ||||
| @ -61,10 +54,9 @@ int main() { | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     // Выводим отсортированные блюда и их цены
 | ||||
|     for (int i = 0; i < count; i++) { | ||||
|         printf("%s\n%.6f\n", dish_name[i], dish_price[i]); | ||||
|     } | ||||
| 
 | ||||
|     return 0; | ||||
| } | ||||
| } | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user