Tin học số 2004

noobboy

Học sinh mới
Thành viên
13 Tháng chín 2020
40
6
6
16
Nghệ An
Trường THCS Đặng Thai Mai
[TẶNG BẠN] TRỌN BỘ Bí kíp học tốt 08 môn
Chắc suất Đại học top - Giữ chỗ ngay!!

ĐĂNG BÀI NGAY để cùng trao đổi với các thành viên siêu nhiệt tình & dễ thương trên diễn đàn.

Yêu cầu:Viết chương trình nhập vào n số nguyên dương. Ghi ra số 2004 nếu tồn tại số 2004 trong dãy số, ghi ra -1 nếu không tồn tại số 2004 trong dãy số.
Dữ liệu:
- Một dòng ghi n(n<106) số nguyên dương kiểu long long cách nhau một dấu cách trống.
Kết quả: Ghi 2004 nếu tồn tại số 2004 trong dãy, ghi -1 nếu ngược lại
 
  • Like
Reactions: quân pro

System32

Học sinh chăm học
Thành viên
25 Tháng chín 2018
343
348
76
Hà Nội
THPT Marie Curie
Yêu cầu:Viết chương trình nhập vào n số nguyên dương. Ghi ra số 2004 nếu tồn tại số 2004 trong dãy số, ghi ra -1 nếu không tồn tại số 2004 trong dãy số.
Dữ liệu:
- Một dòng ghi n(n<106) số nguyên dương kiểu long long cách nhau một dấu cách trống.
Kết quả: Ghi 2004 nếu tồn tại số 2004 trong dãy, ghi -1 nếu ngược lại
Python
Mã:
print(2004 if "2004" in input().split() else -1)
 

Lê Văn Đông

Học sinh tiến bộ
Thành viên
17 Tháng mười 2015
1,422
1,477
244
TP Hồ Chí Minh
ᴳᵒᵈ乡bőýfŕíéńd
@noobboy

Bài này bạn cần ôn lại các kiến thức sau:
+ mảng
+ nhập xuất
+ vòng lặp
+ điều kiện if - else if - else
+ các loại toán tử so sánh.

Code dưới này sai một chỗ ở mỗi dòng, có 4 dòng bị sai yêu cầu, bạn cần đọc hiểu và sửa lại. Mình vẫn đảm bảo code chạy để bạn có thể hình dung được và debug được.
Mã:
#include<iostream>

using namespace std;

int main(){
    //Tạo mảng có 106 số
    //Đề bài yêu cầu kiểu long long
    int number_arr[106];
    //Tạo biến n là số lượng số cần nhập
    int n;
    cout << "Nhap so luong: ";
    cin >> n;
    
    //Tạo vòng lặp để nhập mảng.
    for(int i = 0; i <= n; i++){
        cin >> number_arr[i];
    }
    
    //Tạo vòng lặp để kiểm tra mảng
    for(int i = 0; i < n; i++){
        if(number_arr[i] == 2004){
            cout << "Yes";
        }
        else if(i == n - 1 && number_arr[i] != 2004 ){
            cout << "No";
        }
    }
    
    return 0;
}
 

iceghost

Cựu Mod Toán
Thành viên
TV BQT xuất sắc nhất 2016
20 Tháng chín 2013
5,018
7,484
941
TP Hồ Chí Minh
Đại học Bách Khoa TPHCM
Yêu cầu:Viết chương trình nhập vào n số nguyên dương. Ghi ra số 2004 nếu tồn tại số 2004 trong dãy số, ghi ra -1 nếu không tồn tại số 2004 trong dãy số.
Dữ liệu:
- Một dòng ghi n(n<106) số nguyên dương kiểu long long cách nhau một dấu cách trống.
Kết quả: Ghi 2004 nếu tồn tại số 2004 trong dãy, ghi -1 nếu ngược lại
C++
Mã:
#include <iostream>
using namespace std;

int main()
{
    int number;
    while (cin >> number) {
        if (number == 2004) {
            cout << "2004";
            return 0;
        }
    }
    cout << "-1";
    return 0;
}
 

quân pro

Cựu CTV Confession
Thành viên
22 Tháng bảy 2017
1,262
3,224
356
Hà Nội
THPT Trần Phú - Hoàn Kiếm
C++
Mã:
#include <iostream>
using namespace std;

int main()
{
    int number;
    while (cin >> number) {
        if (number == 2004) {
            cout << "2004";
            return 0;
        }
    }
    cout << "-1";
    return 0;
}
Hi Anh :)
Em là tester đây (Dù đang học làm Dev)
Em test code của anh và thấy rằng
Trường hợp có 2004 trong dãy số là đã làm được

Còn không có số 2004 thì thay vì màn hiện ra -1 thì code vẫn trong While

Nên là .... anh coi lại nha
(Em chưa gặp bài này lần nào nên không biết sửa :( )

P/S : Khi mà hàm bị tràn thì mới ra -1 nha anh :I

upload_2020-10-1_21-23-10.png



upload_2020-10-1_21-21-44.png


upload_2020-10-1_21-22-16.png
 

Attachments

  • upload_2020-10-1_21-21-11.png
    upload_2020-10-1_21-21-11.png
    38.6 KB · Đọc: 46
Top Bottom