zoukankan      html  css  js  c++  java
  • Fortran基础练习02--循环2

    1.输入n个数,找出所有大于n个数的平均值的那些数及最小数

     1 program main
     2 
     3     implicit none
     4     integer n,i,j,tn
     5     real :: mean,min
     6     real,allocatable :: a(:),b(:)
     7     
     8     write(*,*) '请输入数字的个数n='
     9     read(*,*) n
    10     allocate(a(n))
    11     
    12     write(*,*) '请输入',n,'个数'
    13     read(*,*) (a(i),i=1,n)
    14     
    15     mean=real(sum(a))/n
    16     
    17     tn=0
    18     do i=1,n
    19         if (a(i)>mean)  tn=tn+1
    20     enddo
    21     
    22     allocate(b(tn))
    23     
    24     j=1
    25     min=a(1)
    26     do i=1,n
    27         if (a(i)<min) min=a(i)
    28         if (a(i)>mean) then
    29             b(j)=a(i)
    30             j=j+1
    31         endif
    32     enddo
    33     write(*,*) '最小的数为',min
    34     write(*,*) '大于平均数的数有:',b
    35    
    36     pause
    37     
    38 end

    2.把一个数列中的所有相同的数删到只剩一个

     1 program main
     2 
     3     implicit none
     4     integer n,i,j,k
     5     real :: mean,min
     6     real,allocatable :: a(:),b(:)
     7     
     8     write(*,*) '请输入数字的个数n='
     9     read(*,*) n
    10     allocate(a(n))
    11     
    12     write(*,*) '请输入',n,'个数'
    13     read(*,*) (a(i),i=1,n)
    14     
    15     do i=1,n
    16         do j=i+1,n
    17             if (a(i)==a(j)) then
    18                 do k=j,n-1
    19                     a(k)=a(k+1)
    20                 enddo
    21                 n=n-1
    22             endif
    23         enddo
    24     enddo
    25     
    26     write(*,*) '删除重复数字后的数组为:'
    27     write(*,*) (a(i),i=1,n)
    28     
    29     pause
    30     
    31 end
  • 相关阅读:
    NABCD项目分析
    第七周学习进度
    第六周学习进度
    构建之法阅读笔记03
    [算法] 求x的n次方的一种for循环实现
    [算法]分解质因数
    通过索引操作数组
    [swift入门] 数据类型
    二叉排序树 常用函数小结
    剑指 Offer 54. 二叉搜索树的第k大节点 做题小结
  • 原文地址:https://www.cnblogs.com/mathpro/p/9954584.html
Copyright © 2011-2022 走看看